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/Abstract...
File: Model.php
[500] Fix | Delete
[501] Fix | Delete
$table_data = $wpdb->get_results($obj_query, ARRAY_A);
[502] Fix | Delete
[503] Fix | Delete
foreach($table_data as $data_item) {
[504] Fix | Delete
foreach($data_item as $label => $val ) {
[505] Fix | Delete
$generic_object_array[$data_item['id']]->_settings[$label] = maybe_unserialize( $val );
[506] Fix | Delete
}
[507] Fix | Delete
}
[508] Fix | Delete
[509] Fix | Delete
$meta_query = "SELECT * FROM {$this->_meta_table_name} WHERE parent_id IN (" . implode(',', $id_array) . ")";
[510] Fix | Delete
[511] Fix | Delete
$meta_data = $wpdb->get_results($meta_query, ARRAY_A);
[512] Fix | Delete
[513] Fix | Delete
foreach($meta_data as $meta) {
[514] Fix | Delete
[515] Fix | Delete
// if( ! isset($generic_object_array[$meta['parent_id']]->_settings[$meta['meta_key']])) {
[516] Fix | Delete
$generic_object_array[$meta['parent_id']]->_settings[$meta['meta_key']] = maybe_unserialize( $meta['meta_value'] );
[517] Fix | Delete
// }
[518] Fix | Delete
}
[519] Fix | Delete
}
[520] Fix | Delete
$obj_array = array_values($generic_object_array);
[521] Fix | Delete
[522] Fix | Delete
return $obj_array;
[523] Fix | Delete
}
[524] Fix | Delete
[525] Fix | Delete
/*
[526] Fix | Delete
* UTILITY METHODS
[527] Fix | Delete
*/
[528] Fix | Delete
[529] Fix | Delete
/**
[530] Fix | Delete
* Save
[531] Fix | Delete
*/
[532] Fix | Delete
public function save()
[533] Fix | Delete
{
[534] Fix | Delete
[535] Fix | Delete
/**
[536] Fix | Delete
* Check to see if we've completed stage 1 of our db update.
[537] Fix | Delete
*/
[538] Fix | Delete
[539] Fix | Delete
$sql = "SHOW COLUMNS FROM {$this->_db->prefix}nf3_fields LIKE 'field_key'";
[540] Fix | Delete
$results = $this->_db->get_results( $sql );
[541] Fix | Delete
/**
[542] Fix | Delete
* If we don't have the field_key column, we need to remove our new columns.
[543] Fix | Delete
*
[544] Fix | Delete
* Also, set our db stage 1 tracker to false.
[545] Fix | Delete
*/
[546] Fix | Delete
if ( empty ( $results ) ) {
[547] Fix | Delete
$this->db_stage_1_complete = false;
[548] Fix | Delete
}
[549] Fix | Delete
[550] Fix | Delete
$data = array ( 'updated_at' => current_time( 'mysql' ));
[551] Fix | Delete
[552] Fix | Delete
// If the ID is not set, assign an ID
[553] Fix | Delete
if( ! $this->_id ){
[554] Fix | Delete
[555] Fix | Delete
$data[ 'created_at' ] = current_time( 'mysql' ) ;
[556] Fix | Delete
[557] Fix | Delete
if( $this->_parent_id ){
[558] Fix | Delete
$data['parent_id'] = $this->_parent_id;
[559] Fix | Delete
}
[560] Fix | Delete
[561] Fix | Delete
// Create a new row in the database
[562] Fix | Delete
$result = $this->_db->insert(
[563] Fix | Delete
$this->_table_name,
[564] Fix | Delete
$data
[565] Fix | Delete
);
[566] Fix | Delete
[567] Fix | Delete
// Assign the New ID
[568] Fix | Delete
$this->_id = $this->_db->insert_id;
[569] Fix | Delete
} else {
[570] Fix | Delete
[571] Fix | Delete
$result = $this->_db->get_row( "SELECT * FROM $this->_table_name WHERE id = $this->_id" );
[572] Fix | Delete
[573] Fix | Delete
if( ! $result ){
[574] Fix | Delete
$this->_insert_row( array( 'id' => $this->_id ) );
[575] Fix | Delete
}
[576] Fix | Delete
}
[577] Fix | Delete
[578] Fix | Delete
$this->_save_settings();
[579] Fix | Delete
[580] Fix | Delete
// If a Temporary ID is set, return it along with the newly assigned ID.
[581] Fix | Delete
if( $this->_tmp_id ){
[582] Fix | Delete
return array( $this->_tmp_id => $this->_id );
[583] Fix | Delete
}
[584] Fix | Delete
}
[585] Fix | Delete
[586] Fix | Delete
public function _insert_row( $data = array() )
[587] Fix | Delete
{
[588] Fix | Delete
$data[ 'created_at' ] = current_time( 'mysql' );
[589] Fix | Delete
[590] Fix | Delete
if( $this->_parent_id ){
[591] Fix | Delete
$data['parent_id'] = $this->_parent_id;
[592] Fix | Delete
}
[593] Fix | Delete
[594] Fix | Delete
// Create a new row in the database
[595] Fix | Delete
$result = $this->_db->insert(
[596] Fix | Delete
$this->_table_name,
[597] Fix | Delete
$data
[598] Fix | Delete
);
[599] Fix | Delete
}
[600] Fix | Delete
[601] Fix | Delete
/**
[602] Fix | Delete
* Cache Flag
[603] Fix | Delete
*
[604] Fix | Delete
* @param string $cache
[605] Fix | Delete
* @return $this
[606] Fix | Delete
*/
[607] Fix | Delete
public function cache( $cache = '' )
[608] Fix | Delete
{
[609] Fix | Delete
// Set the Cache Flag Property.
[610] Fix | Delete
if( $cache !== '' ) {
[611] Fix | Delete
$this->_cache = $cache;
[612] Fix | Delete
}
[613] Fix | Delete
[614] Fix | Delete
// Return the current object for method chaining.
[615] Fix | Delete
return $this;
[616] Fix | Delete
}
[617] Fix | Delete
[618] Fix | Delete
/**
[619] Fix | Delete
* Add Parent
[620] Fix | Delete
*
[621] Fix | Delete
* Set the Parent ID and Parent Type properties
[622] Fix | Delete
*
[623] Fix | Delete
* @param $parent_id
[624] Fix | Delete
* @param $parent_type
[625] Fix | Delete
* @return $this
[626] Fix | Delete
*/
[627] Fix | Delete
public function add_parent( $parent_id, $parent_type )
[628] Fix | Delete
{
[629] Fix | Delete
$this->_parent_id = $parent_id;
[630] Fix | Delete
[631] Fix | Delete
$this->_parent_type = $parent_type;
[632] Fix | Delete
[633] Fix | Delete
// Return the current object for method chaining.
[634] Fix | Delete
return $this;
[635] Fix | Delete
}
[636] Fix | Delete
[637] Fix | Delete
//-----------------------------------------------------
[638] Fix | Delete
// Protected Methods
[639] Fix | Delete
//-----------------------------------------------------
[640] Fix | Delete
[641] Fix | Delete
/**
[642] Fix | Delete
* Save Setting
[643] Fix | Delete
*
[644] Fix | Delete
* Save a single setting.
[645] Fix | Delete
*
[646] Fix | Delete
* @param $key
[647] Fix | Delete
* @param $value
[648] Fix | Delete
* @return bool|false|int
[649] Fix | Delete
*/
[650] Fix | Delete
protected function _save_setting( $key, $value )
[651] Fix | Delete
{
[652] Fix | Delete
// If the setting is a column, save the settings to the model's table.
[653] Fix | Delete
if( in_array( $key, $this->_columns ) ){
[654] Fix | Delete
[655] Fix | Delete
$format = null;
[656] Fix | Delete
if( in_array( $key, array( 'show_title', 'clear_complete', 'hide_complete', 'logged_in' ) ) ) {
[657] Fix | Delete
// gotta set the format for the columns that use bit type
[658] Fix | Delete
$format = '%d';
[659] Fix | Delete
}
[660] Fix | Delete
[661] Fix | Delete
if( 'form' === $this->_type && 'title' == $key ) {
[662] Fix | Delete
$this->_db->update(
[663] Fix | Delete
$this->_table_name,
[664] Fix | Delete
array(
[665] Fix | Delete
'form_title' => $value
[666] Fix | Delete
),
[667] Fix | Delete
array(
[668] Fix | Delete
'id' => $this->_id
[669] Fix | Delete
),
[670] Fix | Delete
$format
[671] Fix | Delete
);
[672] Fix | Delete
}
[673] Fix | Delete
[674] Fix | Delete
// Don't update the form_title. Duplicating issue for now
[675] Fix | Delete
if( 'form_title' !== $key ) {
[676] Fix | Delete
$update_model = $this->_db->update(
[677] Fix | Delete
$this->_table_name,
[678] Fix | Delete
array(
[679] Fix | Delete
$key => $value
[680] Fix | Delete
),
[681] Fix | Delete
array(
[682] Fix | Delete
'id' => $this->_id
[683] Fix | Delete
),
[684] Fix | Delete
$format
[685] Fix | Delete
);
[686] Fix | Delete
} else {
[687] Fix | Delete
return 1;
[688] Fix | Delete
}
[689] Fix | Delete
[690] Fix | Delete
/*
[691] Fix | Delete
* if it's not a form, you can return, but we are still saving some
[692] Fix | Delete
* settings for forms in the form_meta table
[693] Fix | Delete
*/
[694] Fix | Delete
if( 'form' != $this->_type
[695] Fix | Delete
|| ( 'form' == $this->_type && 'title' == $key ) ) {
[696] Fix | Delete
return $update_model;
[697] Fix | Delete
}
[698] Fix | Delete
}
[699] Fix | Delete
[700] Fix | Delete
$meta_row = $this->_db->get_row(
[701] Fix | Delete
"
[702] Fix | Delete
SELECT `value`
[703] Fix | Delete
FROM `$this->_meta_table_name`
[704] Fix | Delete
WHERE `parent_id` = $this->_id
[705] Fix | Delete
AND `key` = '$key'
[706] Fix | Delete
"
[707] Fix | Delete
);
[708] Fix | Delete
[709] Fix | Delete
if( $meta_row ){
[710] Fix | Delete
[711] Fix | Delete
$update_values = array(
[712] Fix | Delete
'value' => $value,
[713] Fix | Delete
);
[714] Fix | Delete
[715] Fix | Delete
// for forms we need to update the meta_key and meta_value columns
[716] Fix | Delete
if( 'form' == $this->_type || $this->db_stage_1_complete ) {
[717] Fix | Delete
$update_values[ 'meta_key' ] = $key;
[718] Fix | Delete
$update_values[ 'meta_value' ] = $value;
[719] Fix | Delete
}
[720] Fix | Delete
[721] Fix | Delete
$result = $this->_db->update(
[722] Fix | Delete
$this->_meta_table_name,
[723] Fix | Delete
$update_values,
[724] Fix | Delete
array(
[725] Fix | Delete
'key' => $key,
[726] Fix | Delete
'parent_id' => $this->_id
[727] Fix | Delete
)
[728] Fix | Delete
);
[729] Fix | Delete
[730] Fix | Delete
} else {
[731] Fix | Delete
[732] Fix | Delete
$insert_values = array(
[733] Fix | Delete
'key' => $key,
[734] Fix | Delete
'value' => $value,
[735] Fix | Delete
'parent_id' => $this->_id
[736] Fix | Delete
);
[737] Fix | Delete
[738] Fix | Delete
// for forms we need to update the meta_key and meta_value columns
[739] Fix | Delete
if( 'form' == $this->_type || $this->db_stage_1_complete ) {
[740] Fix | Delete
$insert_values[ 'meta_key' ] = $key;
[741] Fix | Delete
$insert_values[ 'meta_value' ] = $value;
[742] Fix | Delete
}
[743] Fix | Delete
[744] Fix | Delete
$result = $this->_db->insert(
[745] Fix | Delete
$this->_meta_table_name,
[746] Fix | Delete
$insert_values,
[747] Fix | Delete
array(
[748] Fix | Delete
'%s',
[749] Fix | Delete
'%s',
[750] Fix | Delete
'%d'
[751] Fix | Delete
)
[752] Fix | Delete
);
[753] Fix | Delete
}
[754] Fix | Delete
[755] Fix | Delete
return $result;
[756] Fix | Delete
}
[757] Fix | Delete
[758] Fix | Delete
/**
[759] Fix | Delete
* Save Settings
[760] Fix | Delete
*
[761] Fix | Delete
* Save all settings.
[762] Fix | Delete
*
[763] Fix | Delete
* @return bool
[764] Fix | Delete
*/
[765] Fix | Delete
protected function _save_settings()
[766] Fix | Delete
{
[767] Fix | Delete
if( ! $this->_settings ) return;
[768] Fix | Delete
[769] Fix | Delete
foreach( $this->_settings as $key => $value ) {
[770] Fix | Delete
$value = maybe_serialize( $value );
[771] Fix | Delete
$this->_results[] = $this->_save_setting( $key, $value );
[772] Fix | Delete
}
[773] Fix | Delete
[774] Fix | Delete
$this->_save_parent_relationship();
[775] Fix | Delete
[776] Fix | Delete
return $this->_results;
[777] Fix | Delete
}
[778] Fix | Delete
[779] Fix | Delete
/**
[780] Fix | Delete
* Save Parent Relationship
[781] Fix | Delete
*
[782] Fix | Delete
* @return $this
[783] Fix | Delete
*/
[784] Fix | Delete
protected function _save_parent_relationship()
[785] Fix | Delete
{
[786] Fix | Delete
// ID, Type, Parent ID, and Parent Type are required for creating a relationship.
[787] Fix | Delete
if( ! $this->_id || ! $this->_type || ! $this->_parent_id || ! $this->_parent_type ) return $this;
[788] Fix | Delete
[789] Fix | Delete
// Check to see if a relationship exists.
[790] Fix | Delete
$this->_db->get_results(
[791] Fix | Delete
"
[792] Fix | Delete
SELECT *
[793] Fix | Delete
FROM $this->_relationships_table
[794] Fix | Delete
WHERE `child_id` = $this->_id
[795] Fix | Delete
AND `child_type` = '$this->_type'
[796] Fix | Delete
"
[797] Fix | Delete
);
[798] Fix | Delete
[799] Fix | Delete
// If a relationship does not exists, then create one.
[800] Fix | Delete
if( 0 == $this->_db->num_rows ) {
[801] Fix | Delete
[802] Fix | Delete
$this->_db->insert(
[803] Fix | Delete
$this->_relationships_table,
[804] Fix | Delete
array(
[805] Fix | Delete
'child_id' => $this->_id,
[806] Fix | Delete
'child_type' => $this->_type,
[807] Fix | Delete
'parent_id' => $this->_parent_id,
[808] Fix | Delete
'parent_type' => $this->_parent_type
[809] Fix | Delete
),
[810] Fix | Delete
array(
[811] Fix | Delete
'%d',
[812] Fix | Delete
'%s',
[813] Fix | Delete
'%d',
[814] Fix | Delete
'%s',
[815] Fix | Delete
)
[816] Fix | Delete
);
[817] Fix | Delete
}
[818] Fix | Delete
[819] Fix | Delete
// Return the current object for method chaining.
[820] Fix | Delete
return $this;
[821] Fix | Delete
}
[822] Fix | Delete
[823] Fix | Delete
/**
[824] Fix | Delete
* Build Meta Query
[825] Fix | Delete
*
[826] Fix | Delete
* @param string $parent_id
[827] Fix | Delete
* @param array $where
[828] Fix | Delete
* @return string
[829] Fix | Delete
*/
[830] Fix | Delete
protected function build_meta_query( $parent_id = '', array $where = array() )
[831] Fix | Delete
{
[832] Fix | Delete
$join_statement = array();
[833] Fix | Delete
$where_statement = array();
[834] Fix | Delete
[835] Fix | Delete
if( $where AND is_array( $where ) ) {
[836] Fix | Delete
[837] Fix | Delete
$where_conditions = array();
[838] Fix | Delete
foreach ($where as $key => $value) {
[839] Fix | Delete
$conditions['key'] = $key;
[840] Fix | Delete
$conditions['value'] = $value;
[841] Fix | Delete
[842] Fix | Delete
$where_conditions[] = $conditions;
[843] Fix | Delete
}
[844] Fix | Delete
[845] Fix | Delete
$count = count($where);
[846] Fix | Delete
for ($i = 0; $i < $count; $i++) {
[847] Fix | Delete
[848] Fix | Delete
$join_statement[] = "INNER JOIN " . $this->_meta_table_name . " as meta$i on meta$i.parent_id = " . $this->_table_name . ".id";
[849] Fix | Delete
$where_statement[] = "( meta$i.key = '" . $where_conditions[$i]['key'] . "' AND meta$i.value = '" . $where_conditions[$i]['value'] . "' )";
[850] Fix | Delete
}
[851] Fix | Delete
[852] Fix | Delete
}
[853] Fix | Delete
[854] Fix | Delete
$join_statement = implode( ' ', $join_statement );
[855] Fix | Delete
[856] Fix | Delete
$where_statement = implode( ' AND ', $where_statement );
[857] Fix | Delete
[858] Fix | Delete
// TODO: Breaks SQL. Needs more testing.
[859] Fix | Delete
// if( $where_statement ) $where_statement = "AND " . $where_statement;
[860] Fix | Delete
[861] Fix | Delete
if( $parent_id ){
[862] Fix | Delete
$where_statement = "$this->_table_name.parent_id = $parent_id $where_statement";
[863] Fix | Delete
}
[864] Fix | Delete
[865] Fix | Delete
if( ! empty( $where_statement ) ) {
[866] Fix | Delete
$where_statement = "WHERE $where_statement";
[867] Fix | Delete
}
[868] Fix | Delete
[869] Fix | Delete
return "SELECT DISTINCT $this->_table_name.id FROM $this->_table_name $join_statement $where_statement";
[870] Fix | Delete
}
[871] Fix | Delete
[872] Fix | Delete
[873] Fix | Delete
}
[874] Fix | Delete
[875] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function