aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorzotlabs <mike@macgirvin.com>2016-10-12 22:12:58 -0700
committerzotlabs <mike@macgirvin.com>2016-10-12 22:12:58 -0700
commit48026efddfdf063fad7c7bd7a86dd7fc4ca4a0a7 (patch)
tree49455a9983d37f6b9a908be77e6dea4a1b7db0d0
parente31451000551c879bda7be8a5fbfe4b6457aa918 (diff)
downloadvolse-hubzilla-48026efddfdf063fad7c7bd7a86dd7fc4ca4a0a7.tar.gz
volse-hubzilla-48026efddfdf063fad7c7bd7a86dd7fc4ca4a0a7.tar.bz2
volse-hubzilla-48026efddfdf063fad7c7bd7a86dd7fc4ca4a0a7.zip
consolidate duplicated code for creating table entries from an array
-rw-r--r--Zotlabs/Module/Import.php37
-rw-r--r--include/import.php143
-rwxr-xr-xinclude/items.php15
-rw-r--r--include/text.php17
4 files changed, 51 insertions, 161 deletions
diff --git a/Zotlabs/Module/Import.php b/Zotlabs/Module/Import.php
index bf47f2e4c..451effaca 100644
--- a/Zotlabs/Module/Import.php
+++ b/Zotlabs/Module/Import.php
@@ -298,15 +298,8 @@ class Import extends \Zotlabs\Web\Controller {
);
if($r)
continue;
-
- dbesc_array($xchan);
-
- $r = dbq("INSERT INTO xchan (" . TQUOT
- . implode(TQUOT . ", " . TQUOT, array_keys($xchan))
- . TQUOT . ") VALUES ('"
- . implode("', '", array_values($xchan))
- . "')" );
-
+
+ create_table_from_array('xchan',$xchan);
require_once('include/photo/photo_driver.php');
$photos = import_xchan_photo($xchan['xchan_photo_l'],$xchan['xchan_hash']);
@@ -386,13 +379,8 @@ class Import extends \Zotlabs\Web\Controller {
continue;
}
- dbesc_array($abook);
- $r = dbq("INSERT INTO abook (" . TQUOT
- . implode(TQUOT . ", " . TQUOT, array_keys($abook))
- . TQUOT . ") VALUES ('"
- . implode("', '", array_values($abook))
- . "')" );
-
+ create_table_from_array('abook',$abook);
+
$friends ++;
if(intval($abook['abook_feed']))
$feeds ++;
@@ -427,13 +415,9 @@ class Import extends \Zotlabs\Web\Controller {
unset($group['name']);
}
unset($group['id']);
- $group['uid'] = $channel['channel_id'];
- dbesc_array($group);
- $r = dbq("INSERT INTO groups (" . TQUOT
- . implode(TQUOT . ", " . TQUOT, array_keys($group))
- . TQUOT . ") VALUES ('"
- . implode("', '", array_values($group))
- . "')" );
+ $group['uid'] = $channel['channel_id'];
+
+ create_table_from_array('groups',$group);
}
$r = q("select * from groups where uid = %d",
intval($channel['channel_id'])
@@ -455,12 +439,7 @@ class Import extends \Zotlabs\Web\Controller {
if($x['old'] == $group_member['gid'])
$group_member['gid'] = $x['new'];
}
- dbesc_array($group_member);
- $r = dbq("INSERT INTO group_member (" . TQUOT
- . implode(TQUOT . ", " . TQUOT, array_keys($group_member))
- . TQUOT . ") VALUES ('"
- . implode("', '", array_values($group_member))
- . "')" );
+ create_table_from_array('group_member',$group_member);
}
}
logger('import step 9');
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