Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-conte.../plugins/ninja-fo.../includes/Database/Models
File: Submission.php
$fieldsetSubmission= $sub->get_field_value( $field_id );
[500] Fix | Delete
$fieldsetSettings = $field->get_settings();
[501] Fix | Delete
$fieldsetLabels = Ninja_Forms()->fieldsetRepeater
[502] Fix | Delete
->getFieldsetLabels($field_id, $fieldsetSettings, true);
[503] Fix | Delete
[504] Fix | Delete
foreach($fieldsetLabels as $fieldsetFieldId =>$fieldsetFieldLabel){
[505] Fix | Delete
[506] Fix | Delete
$fieldsetFieldIds[]=$fieldsetFieldId;
[507] Fix | Delete
[508] Fix | Delete
$field_labels[$fieldsetFieldId]=WPN_Helper::maybe_escape_csv_column( $fieldsetFieldLabel );
[509] Fix | Delete
[510] Fix | Delete
$fieldType = Ninja_Forms()->fieldsetRepeater->getFieldtype($fieldsetFieldId, $fieldsetSettings);
[511] Fix | Delete
[512] Fix | Delete
$fieldsetFieldSubmissionCollection=Ninja_Forms()->fieldsetRepeater
[513] Fix | Delete
->extractSubmissionsByFieldsetField($fieldsetFieldId, $fieldsetSubmission);
[514] Fix | Delete
[515] Fix | Delete
$submissionCount = count($fieldsetFieldSubmissionCollection);
[516] Fix | Delete
[517] Fix | Delete
foreach ($fieldsetFieldSubmissionCollection as &$fieldsetFieldSubmission) {
[518] Fix | Delete
[519] Fix | Delete
if(is_array($fieldsetFieldSubmission['value'])){
[520] Fix | Delete
[521] Fix | Delete
$fieldsetFieldSubmission['value']= implode(', ',$fieldsetFieldSubmission['value']);
[522] Fix | Delete
}
[523] Fix | Delete
}
[524] Fix | Delete
[525] Fix | Delete
[526] Fix | Delete
$value[$fieldsetFieldId]= array_column($fieldsetFieldSubmissionCollection,'value');
[527] Fix | Delete
}
[528] Fix | Delete
[529] Fix | Delete
}else{
[530] Fix | Delete
if (!is_int($field_id)) continue;
[531] Fix | Delete
if( in_array( $field->get_setting( 'type' ), $hidden_field_types ) ) continue;
[532] Fix | Delete
[533] Fix | Delete
if ( $field->get_setting( 'admin_label' ) ) {
[534] Fix | Delete
$field_labels[ $field->get_id() ] = WPN_Helper::maybe_escape_csv_column( $field->get_setting( 'admin_label' ) );
[535] Fix | Delete
} else {
[536] Fix | Delete
$field_labels[ $field->get_id() ] = WPN_Helper::maybe_escape_csv_column( $field->get_setting( 'label' ) );
[537] Fix | Delete
}
[538] Fix | Delete
[539] Fix | Delete
$field_value = maybe_unserialize( $sub->get_field_value( $field_id ) );
[540] Fix | Delete
[541] Fix | Delete
$field_value = apply_filters('nf_subs_export_pre_value', $field_value, $field_id);
[542] Fix | Delete
$field_value = apply_filters('ninja_forms_subs_export_pre_value', $field_value, $field_id, $form_id);
[543] Fix | Delete
$field_value = apply_filters( 'ninja_forms_subs_export_field_value_' . $field->get_setting( 'type' ), $field_value, $field );
[544] Fix | Delete
[545] Fix | Delete
if ( is_array($field_value ) ) {
[546] Fix | Delete
$field_value = implode( ',', $field_value );
[547] Fix | Delete
}
[548] Fix | Delete
[549] Fix | Delete
$value[ $field_id ] = $field_value;
[550] Fix | Delete
[551] Fix | Delete
}
[552] Fix | Delete
}
[553] Fix | Delete
[554] Fix | Delete
if(!$hasRepeater){
[555] Fix | Delete
$value_array[] = $value;
[556] Fix | Delete
}else{
[557] Fix | Delete
// The the submission has repeater fields, create an indexed array first
[558] Fix | Delete
$repeatingValueArray=[];
[559] Fix | Delete
$index = 0;
[560] Fix | Delete
[561] Fix | Delete
do {
[562] Fix | Delete
// iterate each column in the row 'value'
[563] Fix | Delete
foreach($value as $fieldId=>$columnValue){
[564] Fix | Delete
[565] Fix | Delete
// If the column in the row value is not a repeater
[566] Fix | Delete
// fieldset field, simply copy it into a new row of the
[567] Fix | Delete
// repeating value array
[568] Fix | Delete
if(!in_array($fieldId,$fieldsetFieldIds)){
[569] Fix | Delete
$repeatingValueArray[$index][]=$columnValue;
[570] Fix | Delete
}else{
[571] Fix | Delete
[572] Fix | Delete
// If the column in the row value is a repeater
[573] Fix | Delete
// fieldset field, copy the next submission index value
[574] Fix | Delete
[575] Fix | Delete
[576] Fix | Delete
$repeatingValueArray[$index][]=$columnValue[$index];
[577] Fix | Delete
}
[578] Fix | Delete
}
[579] Fix | Delete
// at the end of the row value columns, increment the index
[580] Fix | Delete
// until all the submission index values are added
[581] Fix | Delete
$index++;
[582] Fix | Delete
} while ($index < $submissionCount);
[583] Fix | Delete
[584] Fix | Delete
// After iterating the row value once for each submission index,
[585] Fix | Delete
// add the repeatingValueArray to the value array
[586] Fix | Delete
[587] Fix | Delete
$value_array[]=$repeatingValueArray;
[588] Fix | Delete
}
[589] Fix | Delete
[590] Fix | Delete
}
[591] Fix | Delete
[592] Fix | Delete
$value_array = WPN_Helper::stripslashes( $value_array );
[593] Fix | Delete
[594] Fix | Delete
$csv_array[ 0 ][] = $field_labels;
[595] Fix | Delete
$csv_array[ 1 ][] = $value_array;
[596] Fix | Delete
[597] Fix | Delete
// Get any extra data from our other plugins...
[598] Fix | Delete
$csv_array = apply_filters( 'nf_subs_csv_extra_values', $csv_array, $subs, $form_id );
[599] Fix | Delete
[600] Fix | Delete
$today = date( $date_format, current_time( 'timestamp' ) );
[601] Fix | Delete
$filename = apply_filters( 'nf_subs_csv_filename', 'nf_subs_' . $today );
[602] Fix | Delete
$filename = $filename . ".csv";
[603] Fix | Delete
[604] Fix | Delete
if( $return ){
[605] Fix | Delete
return WPN_Helper::str_putcsv( $csv_array,
[606] Fix | Delete
apply_filters( 'nf_sub_csv_delimiter', ',' ),
[607] Fix | Delete
apply_filters( 'nf_sub_csv_enclosure', '"' ),
[608] Fix | Delete
apply_filters( 'nf_sub_csv_terminator', "\n" )
[609] Fix | Delete
);
[610] Fix | Delete
}else{
[611] Fix | Delete
header( 'Content-type: application/csv');
[612] Fix | Delete
header( 'Content-Disposition: attachment; filename="'.$filename .'"' );
[613] Fix | Delete
header( 'Pragma: no-cache');
[614] Fix | Delete
header( 'Expires: 0' );
[615] Fix | Delete
echo apply_filters( 'nf_sub_csv_bom',"\xEF\xBB\xBF" ) ; // Byte Order Mark
[616] Fix | Delete
echo WPN_Helper::str_putcsv( $csv_array,
[617] Fix | Delete
apply_filters( 'nf_sub_csv_delimiter', ',' ),
[618] Fix | Delete
apply_filters( 'nf_sub_csv_enclosure', '"' ),
[619] Fix | Delete
apply_filters( 'nf_sub_csv_terminator', "\n" )
[620] Fix | Delete
);
[621] Fix | Delete
[622] Fix | Delete
die();
[623] Fix | Delete
}
[624] Fix | Delete
}
[625] Fix | Delete
[626] Fix | Delete
/*
[627] Fix | Delete
* PROTECTED METHODS
[628] Fix | Delete
*/
[629] Fix | Delete
[630] Fix | Delete
[631] Fix | Delete
[632] Fix | Delete
/**
[633] Fix | Delete
* Save Field Value
[634] Fix | Delete
*
[635] Fix | Delete
* @param $field_id
[636] Fix | Delete
* @param $value
[637] Fix | Delete
* @return $this
[638] Fix | Delete
*/
[639] Fix | Delete
protected function _save_field_value( $field_id, $value )
[640] Fix | Delete
{
[641] Fix | Delete
update_post_meta( $this->_id, '_field_' . $field_id, $value );
[642] Fix | Delete
[643] Fix | Delete
return $this;
[644] Fix | Delete
}
[645] Fix | Delete
[646] Fix | Delete
/**
[647] Fix | Delete
* Save Field Values
[648] Fix | Delete
*
[649] Fix | Delete
* @return $this|void
[650] Fix | Delete
*/
[651] Fix | Delete
protected function _save_field_values()
[652] Fix | Delete
{
[653] Fix | Delete
if( ! $this->_field_values ) return FALSE;
[654] Fix | Delete
[655] Fix | Delete
foreach( $this->_field_values as $field_id => $value )
[656] Fix | Delete
{
[657] Fix | Delete
$this->_save_field_value( $field_id, $value );
[658] Fix | Delete
}
[659] Fix | Delete
[660] Fix | Delete
update_post_meta( $this->_id, '_form_id', $this->_form_id );
[661] Fix | Delete
[662] Fix | Delete
update_post_meta( $this->_id, '_seq_num', $this->_seq_num );
[663] Fix | Delete
[664] Fix | Delete
return $this;
[665] Fix | Delete
}
[666] Fix | Delete
[667] Fix | Delete
protected function _save_extra_values()
[668] Fix | Delete
{
[669] Fix | Delete
if( ! $this->_extra_values ) return FALSE;
[670] Fix | Delete
[671] Fix | Delete
$maxCount = apply_filters('ninja_forms_max_extra_data_count',200,$this->_form_id);
[672] Fix | Delete
[673] Fix | Delete
/*
[674] Fix | Delete
* if extra data has more than 200 elements, then stop. Add-ons should
[675] Fix | Delete
* not be adding those many individual pieces of data; rather, they
[676] Fix | Delete
* should add data keyed on specific functional areas from their usage.
[677] Fix | Delete
*
[678] Fix | Delete
* Over the allowed limit, it is expected to be an attack. Site
[679] Fix | Delete
* developers can use filter to raise limit either globally or per-form
[680] Fix | Delete
*/
[681] Fix | Delete
if($maxCount<count($this->_extra_values)){
[682] Fix | Delete
return FALSE;
[683] Fix | Delete
}
[684] Fix | Delete
[685] Fix | Delete
foreach( $this->_extra_values as $key => $value )
[686] Fix | Delete
{
[687] Fix | Delete
if( property_exists( $this, $key ) ) continue;
[688] Fix | Delete
[689] Fix | Delete
update_post_meta( $this->_id, $key, $value );
[690] Fix | Delete
}
[691] Fix | Delete
}
[692] Fix | Delete
[693] Fix | Delete
[694] Fix | Delete
/*
[695] Fix | Delete
* UTILITIES
[696] Fix | Delete
*/
[697] Fix | Delete
[698] Fix | Delete
/**
[699] Fix | Delete
* Format Meta Query
[700] Fix | Delete
*
[701] Fix | Delete
* @param array $where
[702] Fix | Delete
* @return array
[703] Fix | Delete
*/
[704] Fix | Delete
protected function format_meta_query( array $where = array() )
[705] Fix | Delete
{
[706] Fix | Delete
$return = array(
[707] Fix | Delete
array(
[708] Fix | Delete
'key' => '_form_id',
[709] Fix | Delete
'value' => $this->_form_id
[710] Fix | Delete
)
[711] Fix | Delete
);
[712] Fix | Delete
[713] Fix | Delete
if( ! empty( $where ) ) {
[714] Fix | Delete
foreach ($where as $ref => $value) {
[715] Fix | Delete
[716] Fix | Delete
$field_id = ( is_int( $ref ) ) ? $ref : $this->get_field_id_by_key( $ref );
[717] Fix | Delete
[718] Fix | Delete
$return[] = ( is_array($value) ) ? $value : array('key' => "_field_$field_id", 'value' => $value);
[719] Fix | Delete
}
[720] Fix | Delete
}
[721] Fix | Delete
[722] Fix | Delete
return $return;
[723] Fix | Delete
}
[724] Fix | Delete
[725] Fix | Delete
/**
[726] Fix | Delete
* Get Field ID By Key
[727] Fix | Delete
*
[728] Fix | Delete
* @param $field_key
[729] Fix | Delete
* @return mixed
[730] Fix | Delete
*/
[731] Fix | Delete
protected function get_field_id_by_key( $field_key )
[732] Fix | Delete
{
[733] Fix | Delete
global $wpdb;
[734] Fix | Delete
[735] Fix | Delete
$field_id = $wpdb->get_var( $wpdb->prepare(
[736] Fix | Delete
"SELECT id FROM {$wpdb->prefix}nf3_fields WHERE `key` = %s AND `parent_id` = {$this->_form_id}",
[737] Fix | Delete
$field_key
[738] Fix | Delete
));
[739] Fix | Delete
[740] Fix | Delete
return $field_id;
[741] Fix | Delete
}
[742] Fix | Delete
[743] Fix | Delete
public static function sort_fields( $a, $b )
[744] Fix | Delete
{
[745] Fix | Delete
if ( $a->get_setting( 'order' ) == $b->get_setting( 'order' ) ) {
[746] Fix | Delete
return 0;
[747] Fix | Delete
}
[748] Fix | Delete
return ( $a->get_setting( 'order' ) < $b->get_setting( 'order' ) ) ? -1 : 1;
[749] Fix | Delete
}
[750] Fix | Delete
[751] Fix | Delete
[752] Fix | Delete
} // End NF_Database_Models_Submission
[753] Fix | Delete
[754] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function