diff --git a/addon/statusnet/admin.tpl b/addon/statusnet/admin.tpl new file mode 100644 index 000000000..b40adf35a --- /dev/null +++ b/addon/statusnet/admin.tpl @@ -0,0 +1,16 @@ +{{ for $sites as $s }} + {{ inc field_input.tpl with $field=$s.sitename }}{{ endinc }} + {{ inc field_input.tpl with $field=$s.apiurl }}{{ endinc }} + {{ inc field_input.tpl with $field=$s.secret }}{{ endinc }} + {{ inc field_input.tpl with $field=$s.key }}{{ endinc }} + {{ if $s.delete }} + {{ inc field_checkbox.tpl with $field=$s.delete }}{{ endinc }} +
Fill this form to add a new site
+ {{ endif }} + +{{ endfor }} + + + diff --git a/addon/statusnet/statusnet.php b/addon/statusnet/statusnet.php index e24ebc1ee..cb0f87764 100644 --- a/addon/statusnet/statusnet.php +++ b/addon/statusnet/statusnet.php @@ -59,7 +59,6 @@ function statusnet_install() { register_hook('plugin_settings_post', 'addon/statusnet/statusnet.php', 'statusnet_settings_post'); register_hook('post_local_end', 'addon/statusnet/statusnet.php', 'statusnet_post_hook'); register_hook('jot_networks', 'addon/statusnet/statusnet.php', 'statusnet_jot_nets'); - logger("installed statusnet"); } @@ -350,3 +349,66 @@ function statusnet_post_hook(&$a,&$b) { } } +function statusnet_plugin_admin_post(&$a){ + + $sites = array(); + + foreach($_POST['sitename'] as $id=>$sitename){ + $sitename=trim($sitename); + $apiurl=trim($_POST['apiurl'][$id]); + $secret=trim($_POST['secret'][$id]); + $key=trim($_POST['key'][$id]); + if ($sitename!="" && + $apiurl!="" && + $secret!="" && + $key!="" && + !x($_POST['delete'][$id])){ + + $sites[] = Array( + 'sitename' => $sitename, + 'apiurl' => $apiurl, + 'secret' => $secret, + 'key' => $key + ); + } + } + + $sites = set_config('statusnet','sites', $sites); + +} + +function statusnet_plugin_admin(&$a, &$o){ + + $sites = get_config('statusnet','sites'); + $sitesform=array(); + if (is_array($sites)){ + foreach($sites as $id=>$s){ + $sitesform[] = Array( + 'sitename' => Array("sitename[$id]", "Site name", $s['sitename'], ""), + 'apiurl' => Array("apiurl[$id]", "Api url", $s['apiurl'], ""), + 'secret' => Array("secret[$id]", "Secret", $s['secret'], ""), + 'key' => Array("key[$id]", "Key", $s['key'], ""), + 'delete' => Array("delete[$id]", "Delete", False , "Check to delete this preset"), + ); + } + } + /* empty form to add new site */ + $id++; + $sitesform[] = Array( + 'sitename' => Array("sitename[$id]", "Site name", "", ""), + 'apiurl' => Array("apiurl[$id]", "Api url", "", ""), + 'secret' => Array("secret[$id]", "Secret", "", ""), + 'key' => Array("key[$id]", "Key", "", ""), + ); + + + $t = file_get_contents( dirname(__file__). "/admin.tpl" ); + $o = replace_macros($t, array( + '$submit' => t('Submit'), + + '$sites' => $sitesform, + + )); + + +} diff --git a/addon/twitter/twitter.php b/addon/twitter/twitter.php index 3141cf0c9..aeb9cc937 100644 --- a/addon/twitter/twitter.php +++ b/addon/twitter/twitter.php @@ -47,7 +47,6 @@ function twitter_install() { register_hook('plugin_settings_post', 'addon/twitter/twitter.php', 'twitter_settings_post'); register_hook('post_local_end', 'addon/twitter/twitter.php', 'twitter_post_hook'); register_hook('jot_networks', 'addon/twitter/twitter.php', 'twitter_jot_nets'); - register_hook('plugin_admin', 'addon/twitter/twitter.php', 'plugin_admin'); logger("installed twitter"); } @@ -57,7 +56,6 @@ function twitter_uninstall() { unregister_hook('plugin_settings_post', 'addon/twitter/twitter.php', 'twitter_settings_post'); unregister_hook('post_local_end', 'addon/twitter/twitter.php', 'twitter_post_hook'); unregister_hook('jot_networks', 'addon/twitter/twitter.php', 'twitter_jot_nets'); - unregister_hook('plugin_admin', 'addon/twitter/twitter.php', 'plugin_admin'); } function twitter_jot_nets(&$a,&$b) { @@ -242,14 +240,15 @@ function twitter_post_hook(&$a,&$b) { } } } -function plugin_admin_post(&$a){ + +function twitter_plugin_admin_post(&$a){ $consumerkey = ((x($_POST,'consumerkey')) ? notags(trim($_POST['consumerkey'])) : ''); $consumersecret = ((x($_POST,'consumersecret')) ? notags(trim($_POST['consumersecret'])): ''); set_config('twitter','consumerkey',$consumerkey); set_config('twitter','consumersecret',$consumersecret); info( t('Settings updated.'). EOL ); } -function plugin_admin(&$a, &$o){ +function twitter_plugin_admin(&$a, &$o){ $t = file_get_contents( dirname(__file__). "/admin.tpl" ); $o = replace_macros($t, array( '$submit' => t('Submit'), diff --git a/boot.php b/boot.php index 5165dc990..555d2405c 100644 --- a/boot.php +++ b/boot.php @@ -6,7 +6,7 @@ ini_set('pcre.backtrack_limit', 250000); define ( 'FRIENDIKA_VERSION', '2.2.1015' ); define ( 'DFRN_PROTOCOL_VERSION', '2.21' ); -define ( 'DB_UPDATE_VERSION', 1063 ); +define ( 'DB_UPDATE_VERSION', 1064 ); define ( 'EOL', "