From 48026efddfdf063fad7c7bd7a86dd7fc4ca4a0a7 Mon Sep 17 00:00:00 2001 From: zotlabs Date: Wed, 12 Oct 2016 22:12:58 -0700 Subject: consolidate duplicated code for creating table entries from an array --- include/import.php | 143 +++++++++-------------------------------------------- include/items.php | 15 +----- include/text.php | 17 +++++++ 3 files changed, 43 insertions(+), 132 deletions(-) (limited to 'include') diff --git a/include/import.php b/include/import.php index 370d3085e..4225fe493 100644 --- a/include/import.php +++ b/include/import.php @@ -82,14 +82,7 @@ function import_channel($channel, $account_id, $seize) { } if($clean) { - dbesc_array($clean); - - $r = dbq("INSERT INTO channel (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($clean)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($clean)) - . "')" - ); + create_table_from_array('channel',$clean); } if(! $r) { @@ -131,12 +124,7 @@ function import_config($channel,$configs) { foreach($configs as $config) { unset($config['id']); $config['uid'] = $channel['channel_id']; - dbesc_array($config); - $r = dbq("INSERT INTO pconfig (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($config)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($config)) - . "')" ); + create_table_from_array('pconfig',$config); } load_pconfig($channel['channel_id']); } @@ -161,14 +149,7 @@ function import_profiles($channel,$profiles) { $profile['photo'] = z_root() . '/photo/profile/l/' . $channel['channel_id']; $profile['thumb'] = z_root() . '/photo/profile/m/' . $channel['channel_id']; - - dbesc_array($profile); - $r = dbq("INSERT INTO profile (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($profile)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($profile)) - . "')" - ); + create_table_from_array('profile',$profile); } } } @@ -203,14 +184,7 @@ function import_hublocs($channel,$hublocs,$seize) { if(! zot_gethub($arr)) { unset($hubloc['hubloc_id']); - dbesc_array($hubloc); - - $r = dbq("INSERT INTO hubloc (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($hubloc)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($hubloc)) - . "')" - ); + create_table_from_array('hubloc',$hubloc); } } } @@ -242,14 +216,7 @@ function import_objs($channel,$objs) { $obj['obj_imgurl'] = $x[0]; } - dbesc_array($obj); - - $r = dbq("INSERT INTO obj (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($obj)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($obj)) - . "')" - ); + create_table_from_array('obj',$obj); } } } @@ -313,15 +280,7 @@ function sync_objs($channel,$objs) { } } else { - - dbesc_array($obj); - - $r = dbq("INSERT INTO obj (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($obj)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($obj)) - . "')" - ); + create_table_from_array('obj',$obj); } } } @@ -351,13 +310,7 @@ function import_apps($channel,$apps) { $hash = $app['app_id']; - dbesc_array($app); - $r = dbq("INSERT INTO app (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($app)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($app)) - . "')" - ); + create_table_from_array('app',$app); if($term) { $x = q("select * from app where app_id = '%s' and app_channel = %d limit 1", @@ -460,13 +413,8 @@ function sync_apps($channel,$apps) { } } else { - dbesc_array($app); - $r = dbq("INSERT INTO app (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($app)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($app)) - . "')" - ); + create_table_from_array('app',$app); + if($term) { $x = q("select * from app where app_id = '%s' and app_channel = %d limit 1", dbesc($hash), @@ -502,13 +450,7 @@ function import_chatrooms($channel,$chatrooms) { $chatroom['cr_aid'] = $channel['channel_account_id']; $chatroom['cr_uid'] = $channel['channel_id']; - dbesc_array($chatroom); - $r = dbq("INSERT INTO chatroom (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($chatroom)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($chatroom)) - . "')" - ); + create_table_from_array('chatroom',$chatroom); } } } @@ -568,13 +510,7 @@ function sync_chatrooms($channel,$chatrooms) { } } else { - dbesc_array($chatroom); - $r = dbq("INSERT INTO chatroom (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($chatroom)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($chatroom)) - . "')" - ); + create_table_from_array('chatroom',$chatroom); } } } @@ -684,13 +620,7 @@ function import_events($channel,$events) { convert_oldfields($event,'type','etype'); convert_oldfields($event,'ignore','dismissed'); - dbesc_array($event); - $r = dbq("INSERT INTO event (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($event)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($event)) - . "')" - ); + create_table_from_array('event',$event); } } } @@ -745,13 +675,7 @@ function sync_events($channel,$events) { } } else { - dbesc_array($event); - $r = dbq("INSERT INTO event (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($event)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($event)) - . "')" - ); + create_table_from_array('event',$event); } } } @@ -927,12 +851,7 @@ function import_likes($channel,$likes) { if($r) continue; - dbesc_array($like); - $r = dbq("INSERT INTO likes (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($like)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($like)) - . "')" ); + create_table_from_array('likes',$like); } } } @@ -959,13 +878,7 @@ function import_conv($channel,$convs) { ); if($r) continue; - - dbesc_array($conv); - $r = dbq("INSERT INTO conv (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($conv)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($conv)) - . "')" ); + create_table_from_array('conv',$conv); } } } @@ -1110,25 +1023,21 @@ function sync_files($channel,$files) { if(!isset($att['os_path'])) $att['os_path'] = ''; - dbesc_array($att); if($attach_exists) { logger('sync_files attach exists: ' . print_r($att,true), LOGGER_DEBUG); + dbesc_array($att); $str = ''; - foreach($att as $k => $v) { - if($str) - $str .= ","; - $str .= " " . TQUOT . $k . TQUOT . " = '" . $v . "' "; - } + foreach($att as $k => $v) { + if($str) + $str .= ","; + $str .= " " . TQUOT . $k . TQUOT . " = '" . $v . "' "; + } $r = dbq("update attach set " . $str . " where id = " . intval($attach_id) ); } else { logger('sync_files attach does not exists: ' . print_r($att,true), LOGGER_DEBUG); - $r = dbq("INSERT INTO attach (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($att)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($att)) - . "')" ); + create_table_from_array('attach',$att); } @@ -1229,9 +1138,9 @@ function sync_files($channel,$files) { intval($channel['channel_id']) ); - dbesc_array($p); if($exists) { + dbesc_array($p); $str = ''; foreach($p as $k => $v) { if($str) @@ -1241,11 +1150,7 @@ function sync_files($channel,$files) { $r = dbq("update photo set " . $str . " where id = " . intval($exists[0]['id']) ); } else { - $r = dbq("INSERT INTO photo (" . TQUOT - . implode(TQUOT . ", " . TQUOT, array_keys($p)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($p)) - . "')" ); + create_attach_from_array('photo',$p); } } } diff --git a/include/items.php b/include/items.php index b432748ee..a682fafaa 100755 --- a/include/items.php +++ b/include/items.php @@ -1853,13 +1853,8 @@ function item_store($arr, $allow_exec = false, $deliver = true) { logger('item_store: ' . print_r($arr,true), LOGGER_DATA); - dbesc_array($arr); - $r = dbq("INSERT INTO " . TQUOT . 'item' . TQUOT . " (" . TQUOT - . implode(TQUOT . ', ' . TQUOT, array_keys($arr)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($arr)) - . "')" ); + create_table_from_array('item',$arr); // find the item we just created @@ -3088,15 +3083,9 @@ function mail_store($arr) { return 0; } - dbesc_array($arr); - logger('mail_store: ' . print_r($arr,true), LOGGER_DATA); - $r = dbq("INSERT INTO mail (" . TQUOT - . implode(TQUOT . ', ' . TQUOT, array_keys($arr)) - . TQUOT . ") VALUES ('" - . implode("', '", array_values($arr)) - . "')" ); + create_table_from_array('mail', $arr); // find the item we just created diff --git a/include/text.php b/include/text.php index 6d5b72f49..f23458db0 100644 --- a/include/text.php +++ b/include/text.php @@ -3028,3 +3028,20 @@ function array2XML($obj, $array) } } } + + +function create_table_from_array($table,$arr) { + + if(! ($arr && $table)) + return false; + + dbesc_array($arr); + + $r = dbq("INSERT INTO " . TQUOT . $table . TQUOT . " (" . TQUOT + . implode(TQUOT . ', ' . TQUOT, array_keys($arr)) + . TQUOT . ") VALUES ('" + . implode("', '", array_values($arr)) + . "')" ); + return $r; + +} \ No newline at end of file -- cgit v1.2.3