diff --git a/adult_smile.tgz b/adult_smile.tgz index 59d7437c..04ef72fb 100644 Binary files a/adult_smile.tgz and b/adult_smile.tgz differ diff --git a/adult_smile/icons/drunk.gif b/adult_smile/icons/drunk.gif new file mode 100644 index 00000000..4a1c064a Binary files /dev/null and b/adult_smile/icons/drunk.gif differ diff --git a/adult_smile/icons/sperm.gif b/adult_smile/icons/sperm.gif new file mode 100644 index 00000000..6ba92190 Binary files /dev/null and b/adult_smile/icons/sperm.gif differ diff --git a/blockem.tgz b/blockem.tgz index dd092204..c1842e52 100755 Binary files a/blockem.tgz and b/blockem.tgz differ diff --git a/blockem/blockem.php b/blockem/blockem.php index 9134bd0b..5ff87c58 100755 --- a/blockem/blockem.php +++ b/blockem/blockem.php @@ -109,7 +109,7 @@ function blockem_prepare_body(&$a,&$b) { function blockem_display_item(&$a,&$b) { if(strstr($b['output']['body'],'id="blockem-wrap-')) - $b['output']['thumb'] = $a->get_baseurl() . "/images/default-profile-sm.jpg"; + $b['output']['thumb'] = $a->get_baseurl() . "/images/person-80.jpg"; } diff --git a/dwpost.tgz b/dwpost.tgz index ecbb5198..c0fbb96b 100644 Binary files a/dwpost.tgz and b/dwpost.tgz differ diff --git a/dwpost/dwpost.css b/dwpost/dwpost.css index 8edab3d9..3b0ee32a 100644 --- a/dwpost/dwpost.css +++ b/dwpost/dwpost.css @@ -1,15 +1,15 @@ -#ljpost-enable-label, #ljpost-username-label, #ljpost-password-label, #ljpost-bydefault-label { +#dwpost-enable-label, #dwpost-username-label, #dwpost-password-label, #dwpost-bydefault-label { float: left; width: 200px; margin-top: 10px; } -#ljpost-checkbox, #ljpost-username, #ljpost-password, #ljpost-bydefault { +#dwpost-checkbox, #dwpost-username, #dwpost-password, #dwpost-bydefault { float: left; margin-top: 10px; } -#ljpost-submit { +#dwpost-submit { margin-top: 15px; -} \ No newline at end of file +} diff --git a/dwpost/dwpost.php b/dwpost/dwpost.php index 5f8dcc73..2391b571 100644 --- a/dwpost/dwpost.php +++ b/dwpost/dwpost.php @@ -4,7 +4,7 @@ * Name: Dreamwidth Post Connector * Description: Post to dreamwidth * Version: 1.0 - * Author: Tony Baldwin + * Author: Tony Baldwin * Author: Michael Johnston * Author: Cat Gray */ @@ -213,7 +213,7 @@ EOT; logger('dwpost: data: ' . $xml, LOGGER_DATA); if($dw_blog !== 'test') - $x = post_url($dw_blog,$xml); + $x = post_url($dw_blog,$xml,array("Content-Type: text/xml")); logger('posted to dreamwidth: ' . ($x) ? $x : '', LOGGER_DEBUG); } diff --git a/facebook.tgz b/facebook.tgz index 3039b11d..18392c78 100644 Binary files a/facebook.tgz and b/facebook.tgz differ diff --git a/facebook/facebook.php b/facebook/facebook.php index ee812d5e..20690edd 100755 --- a/facebook/facebook.php +++ b/facebook/facebook.php @@ -46,6 +46,12 @@ * authenticate to your site to establish identity. We will address this * in a future release. */ + + /** TODO + * - Implement a method for the administrator to delete all configuration data the plugin has created, + * e.g. the app_access_token + * - Implement a configuration option to set the polling interval system-wide + */ define('FACEBOOK_MAXPOSTLEN', 420); @@ -56,9 +62,8 @@ function facebook_install() { register_hook('jot_networks', 'addon/facebook/facebook.php', 'facebook_jot_nets'); register_hook('connector_settings', 'addon/facebook/facebook.php', 'facebook_plugin_settings'); register_hook('cron', 'addon/facebook/facebook.php', 'facebook_cron'); + register_hook('enotify', 'addon/facebook/facebook.php', 'facebook_enotify'); register_hook('queue_predeliver', 'addon/facebook/facebook.php', 'fb_queue_hook'); - - if (get_config('facebook', 'realtime_active') == 1) facebook_subscription_add_users(); // Restore settings, if the plugin was installed before } @@ -68,13 +73,12 @@ function facebook_uninstall() { unregister_hook('jot_networks', 'addon/facebook/facebook.php', 'facebook_jot_nets'); unregister_hook('connector_settings', 'addon/facebook/facebook.php', 'facebook_plugin_settings'); unregister_hook('cron', 'addon/facebook/facebook.php', 'facebook_cron'); + unregister_hook('enotify', 'addon/facebook/facebook.php', 'facebook_enotify'); unregister_hook('queue_predeliver', 'addon/facebook/facebook.php', 'fb_queue_hook'); // hook moved unregister_hook('post_local_end', 'addon/facebook/facebook.php', 'facebook_post_hook'); unregister_hook('plugin_settings', 'addon/facebook/facebook.php', 'facebook_plugin_settings'); - - if (get_config('facebook', 'realtime_active') == 1) facebook_subscription_del_users(); } @@ -150,8 +154,12 @@ function facebook_init(&$a) { $s = fetch_url('https://graph.facebook.com/me/feed?access_token=' . $access_token); if($s) { $j = json_decode($s); - logger('facebook_init: wall: ' . print_r($j,true), LOGGER_DATA); - fb_consume_stream($uid,$j,($private_wall) ? false : true); + if (isset($j->data)) { + logger('facebook_init: wall: ' . print_r($j,true), LOGGER_DATA); + fb_consume_stream($uid,$j,($private_wall) ? false : true); + } else { + logger('facebook_init: wall: got no data from Facebook: ' . print_r($j,true), LOGGER_NORMAL); + } } } @@ -589,7 +597,7 @@ function facebook_cron($a,$b) { if(strlen($a->config['admin_email']) && !get_config('facebook', 'realtime_err_mailsent')) { $res = mail($a->config['admin_email'], t('Problems with Facebook Real-Time Updates'), - "Hi!\n\nThere's a problem with the Facebook Real-Time Updates that cannob be solved automatically. Maybe an permission issue?\n\nThis e-mail will only be sent once.", + "Hi!\n\nThere's a problem with the Facebook Real-Time Updates that cannot be solved automatically. Maybe an permission issue?\n\nThis e-mail will only be sent once.", 'From: ' . t('Administrator') . '@' . $_SERVER['SERVER_NAME'] . "\n" . 'Content-type: text/plain; charset=UTF-8' . "\n" . 'Content-transfer-encoding: 8bit' @@ -930,6 +938,7 @@ function facebook_post_hook(&$a,&$b) { dbesc('fb::' . $retj->id), intval($b['id']) ); + del_pconfig($b['uid'], 'facebook', 'session_expired_mailsent'); } else { if(! $likes) { @@ -938,6 +947,25 @@ function facebook_post_hook(&$a,&$b) { add_to_queue($a->contact,NETWORK_FACEBOOK,$s); notice( t('Facebook post failed. Queued for retry.') . EOL); } + + if (isset($retj->error) && $retj->error->type == "OAuthException" && $retj->error->code == 190) { + logger('Facebook session has expired due to changed password.', LOGGER_DEBUG); + if (!get_pconfig($b['uid'], 'facebook', 'session_expired_mailsent')) { + require_once('include/enotify.php'); + + $r = q("SELECT * FROM `user` WHERE `uid` = %d LIMIT 1", intval($b['uid']) ); + notification(array( + 'uid' => $b['uid'], + 'type' => NOTIFY_SYSTEM, + 'system_type' => 'facebook_connection_invalid', + 'language' => $r[0]['language'], + 'to_name' => $r[0]['username'], + 'to_email' => $r[0]['email'], + )); + + set_pconfig($b['uid'], 'facebook', 'session_expired_mailsent', '1'); + } + } } logger('Facebook post returns: ' . $x, LOGGER_DEBUG); @@ -947,6 +975,13 @@ function facebook_post_hook(&$a,&$b) { } } +function facebook_enotify(&$app, &$data) { + if (x($data, 'params') && $data['params']['type'] == NOTIFY_SYSTEM && x($data['params'], 'system_type') && $data['params']['system_type'] == 'facebook_connection_invalid') { + $data['itemlink'] = '/facebook'; + $data['epreamble'] = $data['preamble'] = t('Your Facebook connection became invalid. Please Re-authenticate.'); + $data['subject'] = t('Facebook connection became invalid'); + } +} function facebook_post_local(&$a,&$b) { @@ -1045,15 +1080,23 @@ function fb_consume_all($uid) { $s = fetch_url('https://graph.facebook.com/me/feed?access_token=' . $access_token); if($s) { $j = json_decode($s); - logger('fb_consume_stream: wall: ' . print_r($j,true), LOGGER_DATA); - fb_consume_stream($uid,$j,($private_wall) ? false : true); + if (isset($j->data)) { + logger('fb_consume_stream: wall: ' . print_r($j,true), LOGGER_DATA); + fb_consume_stream($uid,$j,($private_wall) ? false : true); + } else { + logger('fb_consume_stream: wall: got no data from Facebook: ' . print_r($j,true), LOGGER_NORMAL); + } } } $s = fetch_url('https://graph.facebook.com/me/home?access_token=' . $access_token); if($s) { $j = json_decode($s); - logger('fb_consume_stream: feed: ' . print_r($j,true), LOGGER_DATA); - fb_consume_stream($uid,$j,false); + if (isset($j->data)) { + logger('fb_consume_stream: feed: ' . print_r($j,true), LOGGER_DATA); + fb_consume_stream($uid,$j,false); + } else { + logger('fb_consume_stream: feed: got no data from Facebook: ' . print_r($j,true), LOGGER_NORMAL); + } } } @@ -1078,7 +1121,7 @@ function fb_consume_stream($uid,$j,$wall = false) { $a = get_app(); - $user = q("SELECT `nickname`, `blockwall` FROM `user` WHERE `uid` = %d AND `account_expired` = 0 LIMIT 1", + $user = q("SELECT * FROM `user` WHERE `uid` = %d AND `account_expired` = 0 LIMIT 1", intval($uid) ); if(! count($user)) @@ -1201,7 +1244,7 @@ function fb_consume_stream($uid,$j,$wall = false) { if($entry->privacy && $entry->privacy->value !== 'EVERYONE') { $datarray['private'] = 1; - $datarray['allow_cid'] = '<' . $uid . '>'; + $datarray['allow_cid'] = '<' . $self[0]['id'] . '>'; } if(trim($datarray['body']) == '') { @@ -1340,6 +1383,47 @@ function fb_consume_stream($uid,$j,$wall = false) { $cmntdata['author-avatar'] = 'https://graph.facebook.com/' . $cmnt->from->id . '/picture'; $cmntdata['body'] = $cmnt->message; $item = item_store($cmntdata); + + $myconv = q("SELECT `author-link`, `author-avatar`, `parent` FROM `item` WHERE `parent-uri` = '%s' AND `uid` = %d AND `parent` != 0 ", + dbesc($orig_post['uri']), + intval($uid) + ); + + if(count($myconv)) { + $importer_url = $a->get_baseurl() . '/profile/' . $user[0]['nickname']; + + foreach($myconv as $conv) { + + // now if we find a match, it means we're in this conversation + + if(! link_compare($conv['author-link'],$importer_url)) + continue; + + require_once('include/enotify.php'); + + $conv_parent = $conv['parent']; + + notification(array( + 'type' => NOTIFY_COMMENT, + 'notify_flags' => $user[0]['notify-flags'], + 'language' => $user[0]['language'], + 'to_name' => $user[0]['username'], + 'to_email' => $user[0]['email'], + 'uid' => $user[0]['uid'], + 'item' => $cmntdata, + 'link' => $a->get_baseurl() . '/display/' . $importer['nickname'] . '/' . $item, + 'source_name' => $cmntdata['author-name'], + 'source_link' => $cmntdata['author-link'], + 'source_photo' => $cmntdata['author-avatar'], + 'verb' => ACTIVITY_POST, + 'otype' => 'item', + 'parent' => $conv_parent, + )); + + // only send one notification + break; + } + } } } } diff --git a/frown.tgz b/frown.tgz new file mode 100644 index 00000000..6a2343f0 Binary files /dev/null and b/frown.tgz differ diff --git a/frown/frown.css b/frown/frown.css new file mode 100755 index 00000000..3690b62a --- /dev/null +++ b/frown/frown.css @@ -0,0 +1,14 @@ + + + +#frown-enable-label { + float: left; + width: 200px; + margin-bottom: 25px; +} + +#frown-checkbox { + float: left; +} + + diff --git a/frown/frown.php b/frown/frown.php new file mode 100755 index 00000000..003039df --- /dev/null +++ b/frown/frown.php @@ -0,0 +1,86 @@ + + * + * + */ + + +function frown_install() { + + register_hook('plugin_settings', 'addon/frown/frown.php', 'frown_settings'); + register_hook('plugin_settings_post', 'addon/frown/frown.php', 'frown_settings_post'); + + logger("installed frown"); +} + + +function frown_uninstall() { + + unregister_hook('plugin_settings', 'addon/frown/frown.php', 'frown_settings'); + unregister_hook('plugin_settings_post', 'addon/frown/frown.php', 'frown_settings_post'); + + + logger("removed frown"); +} + + + +/** + * + * Callback from the settings post function. + * $post contains the $_POST array. + * We will make sure we've got a valid user account + * and if so set our configuration setting for this person. + * + */ + +function frown_settings_post($a,$post) { + if(! local_user() || (! x($_POST,'frown-submit'))) + return; + set_pconfig(local_user(),'system','no_smilies',intval($_POST['frown'])); + + info( t('Frown settings updated.') . EOL); +} + + +/** + * + * Called from the Plugin Setting form. + * Add our own settings info to the page. + * + */ + + + +function frown_settings(&$a,&$s) { + + if(! local_user()) + return; + + /* Add our stylesheet to the page so we can make our settings look nice */ + + $a->page['htmlhead'] .= '' . "\r\n"; + + /* Get the current state of our config variable */ + + $enabled = get_pconfig(local_user(),'system','no_smilies'); + $checked = (($enabled) ? ' checked="checked" ' : ''); + + /* Add some HTML to the existing form */ + + $s .= '
'; + $s .= '

' . t('Frown Settings') . '

'; + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + /* provide a submit button */ + + $s .= '
'; + +} diff --git a/ijpost.tgz b/ijpost.tgz new file mode 100644 index 00000000..555e0602 Binary files /dev/null and b/ijpost.tgz differ diff --git a/ijpost/ijpost.css b/ijpost/ijpost.css new file mode 100644 index 00000000..8b424917 --- /dev/null +++ b/ijpost/ijpost.css @@ -0,0 +1,15 @@ + +#ijpost-enable-label, #ijpost-username-label, #ijpost-password-label, #ijpost-bydefault-label { +float: left; +width: 200px; +margin-top: 10px; +} + +#ijpost-checkbox, #ijpost-username, #ijpost-password, #ijpost-bydefault { +float: left; +margin-top: 10px; +} + +#ijpost-submit { +margin-top: 15px; +} diff --git a/ijpost/ijpost.php b/ijpost/ijpost.php new file mode 100644 index 00000000..d6861f46 --- /dev/null +++ b/ijpost/ijpost.php @@ -0,0 +1,227 @@ + + * Author: Michael Johnston + * Author: Cat Gray + */ + +function ijpost_install() { + register_hook('post_local', 'addon/ijpost/ijpost.php', 'ijpost_post_local'); + register_hook('notifier_normal', 'addon/ijpost/ijpost.php', 'ijpost_send'); + register_hook('jot_networks', 'addon/ijpost/ijpost.php', 'ijpost_jot_nets'); + register_hook('connector_settings', 'addon/ijpost/ijpost.php', 'ijpost_settings'); + register_hook('connector_settings_post', 'addon/ijpost/ijpost.php', 'ijpost_settings_post'); + +} +function ijpost_uninstall() { + unregister_hook('post_local', 'addon/ijpost/ijpost.php', 'ijpost_post_local'); + unregister_hook('notifier_normal', 'addon/ijpost/ijpost.php', 'ijpost_send'); + unregister_hook('jot_networks', 'addon/ijpost/ijpost.php', 'ijpost_jot_nets'); + unregister_hook('connector_settings', 'addon/ijpost/ijpost.php', 'ijpost_settings'); + unregister_hook('connector_settings_post', 'addon/ijpost/ijpost.php', 'ijpost_settings_post'); + +} + + +function ijpost_jot_nets(&$a,&$b) { + if(! local_user()) + return; + + $ij_post = get_pconfig(local_user(),'ijpost','post'); + if(intval($ij_post) == 1) { + $ij_defpost = get_pconfig(local_user(),'ijpost','post_by_default'); + $selected = ((intval($ij_defpost) == 1) ? ' checked="checked" ' : ''); + $b .= '
' + . t('Post to Insanejournal') . '
'; + } +} + + +function ijpost_settings(&$a,&$s) { + + if(! local_user()) + return; + + /* Add our stylesheet to the page so we can make our settings look nice */ + + $a->page['htmlhead'] .= '' . "\r\n"; + + /* Get the current state of our config variables */ + + $enabled = get_pconfig(local_user(),'ijpost','post'); + + $checked = (($enabled) ? ' checked="checked" ' : ''); + + $def_enabled = get_pconfig(local_user(),'ijpost','post_by_default'); + + $def_checked = (($def_enabled) ? ' checked="checked" ' : ''); + + $ij_username = get_pconfig(local_user(), 'ijpost', 'ij_username'); + $ij_password = get_pconfig(local_user(), 'ijpost', 'ij_password'); + + + /* Add some HTML to the existing form */ + + $s .= '
'; + $s .= '

' . t('InsaneJournal Post Settings') . '

'; + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + /* provide a submit button */ + + $s .= '
'; + +} + + +function ijpost_settings_post(&$a,&$b) { + + if(x($_POST,'ijpost-submit')) { + + set_pconfig(local_user(),'ijpost','post',intval($_POST['ijpost'])); + set_pconfig(local_user(),'ijpost','post_by_default',intval($_POST['ij_bydefault'])); + set_pconfig(local_user(),'ijpost','ij_username',trim($_POST['ij_username'])); + set_pconfig(local_user(),'ijpost','ij_password',trim($_POST['ij_password'])); + + } + +} + +function ijpost_post_local(&$a,&$b) { + + // This can probably be changed to allow editing by pointing to a different API endpoint + + if($b['edit']) + return; + + if((! local_user()) || (local_user() != $b['uid'])) + return; + + if($b['private'] || $b['parent']) + return; + + $ij_post = intval(get_pconfig(local_user(),'ijpost','post')); + + $ij_enable = (($ij_post && x($_REQUEST,'ijpost_enable')) ? intval($_REQUEST['ijpost_enable']) : 0); + + if($_REQUEST['api_source'] && intval(get_pconfig(local_user(),'ijpost','post_by_default'))) + $ij_enable = 1; + + if(! $ij_enable) + return; + + if(strlen($b['postopts'])) + $b['postopts'] .= ','; + $b['postopts'] .= 'ijpost'; +} + + + + +function ijpost_send(&$a,&$b) { + + if($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) + return; + + if(! strstr($b['postopts'],'ijpost')) + return; + + if($b['parent'] != $b['id']) + return; + + // insanejournal post in the LJ user's timezone. + // Hopefully the person's Friendica account + // will be set to the same thing. + + $tz = 'UTC'; + + $x = q("select timezone from user where uid = %d limit 1", + intval($b['uid']) + ); + if($x && strlen($x[0]['timezone'])) + $tz = $x[0]['timezone']; + + $ij_username = get_pconfig($b['uid'],'ijpost','ij_username'); + $ij_password = get_pconfig($b['uid'],'ijpost','ij_password'); + $ij_blog = 'http://www.insanejournal.com/interface/xmlrpc'; + + if($ij_username && $ij_password && $ij_blog) { + + require_once('include/bbcode.php'); + require_once('include/datetime.php'); + + $title = $b['title']; + $post = bbcode($b['body']); + $post = xmlify($post); + $tags = ijpost_get_tags($b['tag']); + + $date = datetime_convert('UTC',$tz,$b['created'],'Y-m-d H:i:s'); + $year = intval(substr($date,0,4)); + $mon = intval(substr($date,5,2)); + $day = intval(substr($date,8,2)); + $hour = intval(substr($date,11,2)); + $min = intval(substr($date,14,2)); + + $xml = <<< EOT + +LJ.XMLRPC.postevent + + +year$year +mon$mon +day$day +hour$hour +min$min +event$post +username$ij_username +password$ij_password +subject$title +lineendingsunix +ver1 +props + +useragentFriendica +taglist$tags + + + + + +EOT; + + logger('ijpost: data: ' . $xml, LOGGER_DATA); + + if($ij_blog !== 'test') + $x = post_url($ij_blog,$xml,array("Content-Type: text/xml")); + logger('posted to insanejournal: ' . ($x) ? $x : '', LOGGER_DEBUG); + + } +} + +function ijpost_get_tags($post) +{ + preg_match_all("/\]([^\[#]+)\[/",$post,$matches); + $tags = implode(', ',$matches[1]); + return $tags; +} diff --git a/irc.tgz b/irc.tgz index 999c8d21..e10b0769 100644 Binary files a/irc.tgz and b/irc.tgz differ diff --git a/irc/irc.php b/irc/irc.php index 397844e0..1e051950 100644 --- a/irc/irc.php +++ b/irc/irc.php @@ -3,9 +3,14 @@ * Name: IRC Chat Plugin * Description: add an Internet Relay Chat chatroom * Version: 1.0 -* Author: tony baldwin +* Author: tony baldwin */ +/* enable in admin->plugins + * you will then have "irc chatroom" listed at yoursite/apps + * and the app will run at yoursite/irc + * documentation at http://tonybaldwin.me/hax/doku.php?id=friendica:irc + */ function irc_install() { register_hook('app_menu', 'addon/irc/irc.php', 'irc_app_menu'); @@ -32,9 +37,13 @@ $baseurl = $a->get_baseurl() . '/addon/irc'; $o = ''; - // add the chatroom frame and some html +/* add the chatroom frame and some html + * by altering the "channels=friendica" part of the URL, you can add/remove channels. + * At free-haven.org, I have "?channels=friendica,free-haven", for instance, to open #friendica and #free-haven + */ $o .= <<< EOT

IRC chat

+

a beginner's guide to using IRC.

EOT; diff --git a/ljpost.tgz b/ljpost.tgz index 21ec1915..840e2ee2 100644 Binary files a/ljpost.tgz and b/ljpost.tgz differ diff --git a/ljpost/ljpost.php b/ljpost/ljpost.php index e1bd2d63..dc17e83f 100755 --- a/ljpost/ljpost.php +++ b/ljpost/ljpost.php @@ -4,7 +4,7 @@ * Name: LiveJournal Post Connector * Description: Post to LiveJournal * Version: 1.0 - * Author: Tony Baldwin + * Author: Tony Baldwin * Author: Michael Johnston * Author: Cat Gray */ @@ -232,7 +232,7 @@ EOT; logger('ljpost: data: ' . $xml, LOGGER_DATA); if($lj_blog !== 'test') - $x = post_url($lj_blog,$xml); + $x = post_url($lj_blog,$xml,array("Content-Type: text/xml")); logger('posted to livejournal: ' . ($x) ? $x : '', LOGGER_DEBUG); } diff --git a/page.tgz b/page.tgz new file mode 100644 index 00000000..aebbe4dd Binary files /dev/null and b/page.tgz differ diff --git a/page/page.php b/page/page.php new file mode 100755 index 00000000..2a65cab8 --- /dev/null +++ b/page/page.php @@ -0,0 +1,60 @@ + + * based on pages plugin by + * Author: Michael Vogel + * + */ + +function page_install() { + register_hook('page_end', 'addon/page/page.php', 'page_page_end'); +} + +function page_uninstall() { + unregister_hook('page_end', 'addon/page/page.php', 'page_page_end'); +} + + +function page_getpage($uid) { + + + $pagelist = array(); + + $contacts = q("SELECT `id`, `url`, `name`, `micro`FROM `contact` + WHERE `network`= 'dfrn' AND `forum` = 1 AND `uid` = %d", + intval($uid) + ); + + $page = array(); + + // Look if the profile is a community page + foreach($contacts as $contact) { + $page[] = array("url"=>$contact["url"], "name"=>$contact["name"], "id"=>$contact["id"], "micro"=>$contact['micro']); + } + return($page); +} + +function page_page_end($a,&$b) { + // Only move on if if it's the "network" module and there is a logged on user + if (($a->module != "network") OR ($a->user['uid'] == 0)) + return; + + $page = '
+
+

'.t("Community Pages").'

+
"; + if (sizeof($contacts) > 0) + $a->page['aside'] = $page . $a->page['aside']; +} +?> diff --git a/rememberoid/rememberoid.php b/rememberoid/rememberoid.php new file mode 100644 index 00000000..36f42c36 --- /dev/null +++ b/rememberoid/rememberoid.php @@ -0,0 +1,44 @@ + + */ + + +function rememberoid_install(){ + register_hook('init_1','addon/rememberoid/rememberoid.php','rememberoid_init'); + register_hook('logging_out','addon/rememberoid/rememberoid.php','rememberoid_logout'); + register_hook('login_hook','addon/rememberoid/rememberoid.php','rememberoid_form'); +} + +function rememberoid_uninstall(){ + unregister_hook('init_1','addon/rememberoid/rememberoid.php','rememberoid_init'); + unregister_hook('logging_out','addon/rememberoid/rememberoid.php','rememberoid_logout'); + unregister_hook('login_hook','addon/rememberoid/rememberoid.php','rememberoid_form'); +} + +function rememberoid_init(&$a) { + if (x($_COOKIE, "remember_oid") && !x($_SESSION['openid']) && !x($_SESSION,'authenticated') && !x($_POST,'auth-params') && $a->module === 'home' ){ + $_POST['openid_url'] = $_COOKIE["remember_oid"]; + $_POST['auth-params'] = 1; + } + if (x($_POST,'auth-params') && $_POST['openid_url'] && $_POST['openid_url']!="" && $_POST['remember_oid']){ + setcookie('remember_oid', $_POST['openid_url'], time()+60*60*24*30, "/"); + } +} + +function rememberoid_logout(&$a) { + setcookie("rembember_oid", "", time()-3600); +} + +function rememberoid_form(&$a, &$o){ + $tpl = get_markup_template("field_checkbox.tpl"); + $html = replace_macros($tpl, array( + '$field' => array('remember_oid', t("Autologin with this OpenId"), false,''), + )); + + $o = preg_replace("|
|", "
".$html, $o); + +} diff --git a/smiley_pack.tgz b/smiley_pack.tgz new file mode 100644 index 00000000..384c6b9b Binary files /dev/null and b/smiley_pack.tgz differ diff --git a/smiley_pack/icons/animals/bee.gif b/smiley_pack/icons/animals/bee.gif new file mode 100644 index 00000000..206c2e3e Binary files /dev/null and b/smiley_pack/icons/animals/bee.gif differ diff --git a/smiley_pack/icons/animals/bigspider.gif b/smiley_pack/icons/animals/bigspider.gif new file mode 100644 index 00000000..bc43debd Binary files /dev/null and b/smiley_pack/icons/animals/bigspider.gif differ diff --git a/smiley_pack/icons/animals/bunny.gif b/smiley_pack/icons/animals/bunny.gif new file mode 100644 index 00000000..402b2b31 Binary files /dev/null and b/smiley_pack/icons/animals/bunny.gif differ diff --git a/smiley_pack/icons/animals/bunnyflowers.gif b/smiley_pack/icons/animals/bunnyflowers.gif new file mode 100644 index 00000000..6d665e2c Binary files /dev/null and b/smiley_pack/icons/animals/bunnyflowers.gif differ diff --git a/smiley_pack/icons/animals/cat.gif b/smiley_pack/icons/animals/cat.gif new file mode 100644 index 00000000..3a0db669 Binary files /dev/null and b/smiley_pack/icons/animals/cat.gif differ diff --git a/smiley_pack/icons/animals/chick.gif b/smiley_pack/icons/animals/chick.gif new file mode 100644 index 00000000..6bcddcd8 Binary files /dev/null and b/smiley_pack/icons/animals/chick.gif differ diff --git a/smiley_pack/icons/animals/cow.gif b/smiley_pack/icons/animals/cow.gif new file mode 100644 index 00000000..3f94cfa6 Binary files /dev/null and b/smiley_pack/icons/animals/cow.gif differ diff --git a/smiley_pack/icons/animals/crab.gif b/smiley_pack/icons/animals/crab.gif new file mode 100644 index 00000000..db5b8ce3 Binary files /dev/null and b/smiley_pack/icons/animals/crab.gif differ diff --git a/smiley_pack/icons/animals/dog.gif b/smiley_pack/icons/animals/dog.gif new file mode 100644 index 00000000..7b28477b Binary files /dev/null and b/smiley_pack/icons/animals/dog.gif differ diff --git a/smiley_pack/icons/animals/dolphin.gif b/smiley_pack/icons/animals/dolphin.gif new file mode 100644 index 00000000..672ebd72 Binary files /dev/null and b/smiley_pack/icons/animals/dolphin.gif differ diff --git a/smiley_pack/icons/animals/dragonfly.gif b/smiley_pack/icons/animals/dragonfly.gif new file mode 100644 index 00000000..566e95c2 Binary files /dev/null and b/smiley_pack/icons/animals/dragonfly.gif differ diff --git a/smiley_pack/icons/animals/elephant.gif b/smiley_pack/icons/animals/elephant.gif new file mode 100644 index 00000000..4311e97d Binary files /dev/null and b/smiley_pack/icons/animals/elephant.gif differ diff --git a/smiley_pack/icons/animals/fish.gif b/smiley_pack/icons/animals/fish.gif new file mode 100644 index 00000000..3a7a584b Binary files /dev/null and b/smiley_pack/icons/animals/fish.gif differ diff --git a/smiley_pack/icons/animals/frog.gif b/smiley_pack/icons/animals/frog.gif new file mode 100644 index 00000000..85e4b56e Binary files /dev/null and b/smiley_pack/icons/animals/frog.gif differ diff --git a/smiley_pack/icons/animals/giraffe.gif b/smiley_pack/icons/animals/giraffe.gif new file mode 100644 index 00000000..4c95ea4c Binary files /dev/null and b/smiley_pack/icons/animals/giraffe.gif differ diff --git a/smiley_pack/icons/animals/hamster.gif b/smiley_pack/icons/animals/hamster.gif new file mode 100644 index 00000000..96c7323c Binary files /dev/null and b/smiley_pack/icons/animals/hamster.gif differ diff --git a/smiley_pack/icons/animals/horse.gif b/smiley_pack/icons/animals/horse.gif new file mode 100644 index 00000000..9103abfa Binary files /dev/null and b/smiley_pack/icons/animals/horse.gif differ diff --git a/smiley_pack/icons/animals/ladybird.gif b/smiley_pack/icons/animals/ladybird.gif new file mode 100644 index 00000000..69444a9e Binary files /dev/null and b/smiley_pack/icons/animals/ladybird.gif differ diff --git a/smiley_pack/icons/animals/monkey.gif b/smiley_pack/icons/animals/monkey.gif new file mode 100644 index 00000000..b9b338d2 Binary files /dev/null and b/smiley_pack/icons/animals/monkey.gif differ diff --git a/smiley_pack/icons/animals/parrot.gif b/smiley_pack/icons/animals/parrot.gif new file mode 100644 index 00000000..ae6faf66 Binary files /dev/null and b/smiley_pack/icons/animals/parrot.gif differ diff --git a/smiley_pack/icons/animals/pig.gif b/smiley_pack/icons/animals/pig.gif new file mode 100644 index 00000000..bdc68e83 Binary files /dev/null and b/smiley_pack/icons/animals/pig.gif differ diff --git a/smiley_pack/icons/animals/sheep.gif b/smiley_pack/icons/animals/sheep.gif new file mode 100644 index 00000000..8fafc11d Binary files /dev/null and b/smiley_pack/icons/animals/sheep.gif differ diff --git a/smiley_pack/icons/animals/snail.gif b/smiley_pack/icons/animals/snail.gif new file mode 100644 index 00000000..3bdb44cb Binary files /dev/null and b/smiley_pack/icons/animals/snail.gif differ diff --git a/smiley_pack/icons/animals/tux.gif b/smiley_pack/icons/animals/tux.gif new file mode 100644 index 00000000..08e006e1 Binary files /dev/null and b/smiley_pack/icons/animals/tux.gif differ diff --git a/smiley_pack/icons/babies/baby.gif b/smiley_pack/icons/babies/baby.gif new file mode 100644 index 00000000..d105afb3 Binary files /dev/null and b/smiley_pack/icons/babies/baby.gif differ diff --git a/smiley_pack/icons/babies/babycot.gif b/smiley_pack/icons/babies/babycot.gif new file mode 100644 index 00000000..750f6df1 Binary files /dev/null and b/smiley_pack/icons/babies/babycot.gif differ diff --git a/smiley_pack/icons/babies/pregnant.gif b/smiley_pack/icons/babies/pregnant.gif new file mode 100644 index 00000000..d97f4768 Binary files /dev/null and b/smiley_pack/icons/babies/pregnant.gif differ diff --git a/smiley_pack/icons/babies/stork.gif b/smiley_pack/icons/babies/stork.gif new file mode 100644 index 00000000..de2371d6 Binary files /dev/null and b/smiley_pack/icons/babies/stork.gif differ diff --git a/smiley_pack/icons/confused/confused.gif b/smiley_pack/icons/confused/confused.gif new file mode 100644 index 00000000..8f1b79a7 Binary files /dev/null and b/smiley_pack/icons/confused/confused.gif differ diff --git a/smiley_pack/icons/confused/dazed.gif b/smiley_pack/icons/confused/dazed.gif new file mode 100644 index 00000000..f5e7ec26 Binary files /dev/null and b/smiley_pack/icons/confused/dazed.gif differ diff --git a/smiley_pack/icons/confused/shrug.gif b/smiley_pack/icons/confused/shrug.gif new file mode 100644 index 00000000..31ce007f Binary files /dev/null and b/smiley_pack/icons/confused/shrug.gif differ diff --git a/smiley_pack/icons/confused/stupid.gif b/smiley_pack/icons/confused/stupid.gif new file mode 100644 index 00000000..c17170aa Binary files /dev/null and b/smiley_pack/icons/confused/stupid.gif differ diff --git a/smiley_pack/icons/cool/affro.gif b/smiley_pack/icons/cool/affro.gif new file mode 100644 index 00000000..f06166b8 Binary files /dev/null and b/smiley_pack/icons/cool/affro.gif differ diff --git a/smiley_pack/icons/cool/cool.gif b/smiley_pack/icons/cool/cool.gif new file mode 100644 index 00000000..05ba9f13 Binary files /dev/null and b/smiley_pack/icons/cool/cool.gif differ diff --git a/smiley_pack/icons/devilangel/angel.gif b/smiley_pack/icons/devilangel/angel.gif new file mode 100644 index 00000000..8e585416 Binary files /dev/null and b/smiley_pack/icons/devilangel/angel.gif differ diff --git a/smiley_pack/icons/devilangel/blondedevil.gif b/smiley_pack/icons/devilangel/blondedevil.gif new file mode 100644 index 00000000..09e7e682 Binary files /dev/null and b/smiley_pack/icons/devilangel/blondedevil.gif differ diff --git a/smiley_pack/icons/devilangel/catdevil.gif b/smiley_pack/icons/devilangel/catdevil.gif new file mode 100644 index 00000000..269d719b Binary files /dev/null and b/smiley_pack/icons/devilangel/catdevil.gif differ diff --git a/smiley_pack/icons/devilangel/cherub.gif b/smiley_pack/icons/devilangel/cherub.gif new file mode 100644 index 00000000..40872e03 Binary files /dev/null and b/smiley_pack/icons/devilangel/cherub.gif differ diff --git a/smiley_pack/icons/devilangel/daseesaw.gif b/smiley_pack/icons/devilangel/daseesaw.gif new file mode 100644 index 00000000..1c04b2ee Binary files /dev/null and b/smiley_pack/icons/devilangel/daseesaw.gif differ diff --git a/smiley_pack/icons/devilangel/devil.gif b/smiley_pack/icons/devilangel/devil.gif new file mode 100644 index 00000000..2b567972 Binary files /dev/null and b/smiley_pack/icons/devilangel/devil.gif differ diff --git a/smiley_pack/icons/devilangel/graveside.gif b/smiley_pack/icons/devilangel/graveside.gif new file mode 100644 index 00000000..0e909357 Binary files /dev/null and b/smiley_pack/icons/devilangel/graveside.gif differ diff --git a/smiley_pack/icons/devilangel/saint.gif b/smiley_pack/icons/devilangel/saint.gif new file mode 100644 index 00000000..52c22c48 Binary files /dev/null and b/smiley_pack/icons/devilangel/saint.gif differ diff --git a/smiley_pack/icons/devilangel/turnevil.gif b/smiley_pack/icons/devilangel/turnevil.gif new file mode 100644 index 00000000..1490c0f7 Binary files /dev/null and b/smiley_pack/icons/devilangel/turnevil.gif differ diff --git a/smiley_pack/icons/disgust/fart.gif b/smiley_pack/icons/disgust/fart.gif new file mode 100644 index 00000000..4160a1fc Binary files /dev/null and b/smiley_pack/icons/disgust/fart.gif differ diff --git a/smiley_pack/icons/disgust/fartblush.gif b/smiley_pack/icons/disgust/fartblush.gif new file mode 100644 index 00000000..4160a1fc Binary files /dev/null and b/smiley_pack/icons/disgust/fartblush.gif differ diff --git a/smiley_pack/icons/disgust/fartinbed.gif b/smiley_pack/icons/disgust/fartinbed.gif new file mode 100644 index 00000000..55536499 Binary files /dev/null and b/smiley_pack/icons/disgust/fartinbed.gif differ diff --git a/smiley_pack/icons/disgust/toilet.gif b/smiley_pack/icons/disgust/toilet.gif new file mode 100644 index 00000000..092d7ca4 Binary files /dev/null and b/smiley_pack/icons/disgust/toilet.gif differ diff --git a/smiley_pack/icons/disgust/vomit.gif b/smiley_pack/icons/disgust/vomit.gif new file mode 100644 index 00000000..6e7e727a Binary files /dev/null and b/smiley_pack/icons/disgust/vomit.gif differ diff --git a/smiley_pack/icons/drink/tea.gif b/smiley_pack/icons/drink/tea.gif new file mode 100644 index 00000000..474b9894 Binary files /dev/null and b/smiley_pack/icons/drink/tea.gif differ diff --git a/smiley_pack/icons/drool/drool.gif b/smiley_pack/icons/drool/drool.gif new file mode 100644 index 00000000..4093df65 Binary files /dev/null and b/smiley_pack/icons/drool/drool.gif differ diff --git a/smiley_pack/icons/fantasy/alienmonster.gif b/smiley_pack/icons/fantasy/alienmonster.gif new file mode 100644 index 00000000..e0ca7f65 Binary files /dev/null and b/smiley_pack/icons/fantasy/alienmonster.gif differ diff --git a/smiley_pack/icons/fantasy/barbarian.gif b/smiley_pack/icons/fantasy/barbarian.gif new file mode 100644 index 00000000..de8a0686 Binary files /dev/null and b/smiley_pack/icons/fantasy/barbarian.gif differ diff --git a/smiley_pack/icons/fantasy/dinosaur.gif b/smiley_pack/icons/fantasy/dinosaur.gif new file mode 100644 index 00000000..e8c625c3 Binary files /dev/null and b/smiley_pack/icons/fantasy/dinosaur.gif differ diff --git a/smiley_pack/icons/fantasy/dragon.gif b/smiley_pack/icons/fantasy/dragon.gif new file mode 100644 index 00000000..fd28fbf1 Binary files /dev/null and b/smiley_pack/icons/fantasy/dragon.gif differ diff --git a/smiley_pack/icons/fantasy/dragonwhelp.gif b/smiley_pack/icons/fantasy/dragonwhelp.gif new file mode 100644 index 00000000..dbc45559 Binary files /dev/null and b/smiley_pack/icons/fantasy/dragonwhelp.gif differ diff --git a/smiley_pack/icons/fantasy/ghost.gif b/smiley_pack/icons/fantasy/ghost.gif new file mode 100644 index 00000000..4c5d85d8 Binary files /dev/null and b/smiley_pack/icons/fantasy/ghost.gif differ diff --git a/smiley_pack/icons/fantasy/mummy.gif b/smiley_pack/icons/fantasy/mummy.gif new file mode 100644 index 00000000..50e1dfb9 Binary files /dev/null and b/smiley_pack/icons/fantasy/mummy.gif differ diff --git a/smiley_pack/icons/fight/2guns.gif b/smiley_pack/icons/fight/2guns.gif new file mode 100644 index 00000000..9e1b6638 Binary files /dev/null and b/smiley_pack/icons/fight/2guns.gif differ diff --git a/smiley_pack/icons/fight/acid.gif b/smiley_pack/icons/fight/acid.gif new file mode 100644 index 00000000..fa55f674 Binary files /dev/null and b/smiley_pack/icons/fight/acid.gif differ diff --git a/smiley_pack/icons/fight/alienfight.gif b/smiley_pack/icons/fight/alienfight.gif new file mode 100644 index 00000000..9d5e8792 Binary files /dev/null and b/smiley_pack/icons/fight/alienfight.gif differ diff --git a/smiley_pack/icons/fight/army.gif b/smiley_pack/icons/fight/army.gif new file mode 100644 index 00000000..75067008 Binary files /dev/null and b/smiley_pack/icons/fight/army.gif differ diff --git a/smiley_pack/icons/fight/arrowhead.gif b/smiley_pack/icons/fight/arrowhead.gif new file mode 100644 index 00000000..f4572c43 Binary files /dev/null and b/smiley_pack/icons/fight/arrowhead.gif differ diff --git a/smiley_pack/icons/fight/bfg.gif b/smiley_pack/icons/fight/bfg.gif new file mode 100644 index 00000000..c2ba9d06 Binary files /dev/null and b/smiley_pack/icons/fight/bfg.gif differ diff --git a/smiley_pack/icons/fight/bowman.gif b/smiley_pack/icons/fight/bowman.gif new file mode 100644 index 00000000..2f1f8f05 Binary files /dev/null and b/smiley_pack/icons/fight/bowman.gif differ diff --git a/smiley_pack/icons/fight/chainsaw.gif b/smiley_pack/icons/fight/chainsaw.gif new file mode 100644 index 00000000..71f757c3 Binary files /dev/null and b/smiley_pack/icons/fight/chainsaw.gif differ diff --git a/smiley_pack/icons/fight/crossbow.gif b/smiley_pack/icons/fight/crossbow.gif new file mode 100644 index 00000000..20874f3c Binary files /dev/null and b/smiley_pack/icons/fight/crossbow.gif differ diff --git a/smiley_pack/icons/fight/crusader.gif b/smiley_pack/icons/fight/crusader.gif new file mode 100644 index 00000000..95848aea Binary files /dev/null and b/smiley_pack/icons/fight/crusader.gif differ diff --git a/smiley_pack/icons/fight/dead.gif b/smiley_pack/icons/fight/dead.gif new file mode 100644 index 00000000..31adaba3 Binary files /dev/null and b/smiley_pack/icons/fight/dead.gif differ diff --git a/smiley_pack/icons/fight/gangs.gif b/smiley_pack/icons/fight/gangs.gif new file mode 100644 index 00000000..2c655b1f Binary files /dev/null and b/smiley_pack/icons/fight/gangs.gif differ diff --git a/smiley_pack/icons/fight/hammersplat.gif b/smiley_pack/icons/fight/hammersplat.gif new file mode 100644 index 00000000..95bd5409 Binary files /dev/null and b/smiley_pack/icons/fight/hammersplat.gif differ diff --git a/smiley_pack/icons/fight/lasergun.gif b/smiley_pack/icons/fight/lasergun.gif new file mode 100644 index 00000000..f3f82cbd Binary files /dev/null and b/smiley_pack/icons/fight/lasergun.gif differ diff --git a/smiley_pack/icons/fight/machinegun.gif b/smiley_pack/icons/fight/machinegun.gif new file mode 100644 index 00000000..1cff5cc5 Binary files /dev/null and b/smiley_pack/icons/fight/machinegun.gif differ diff --git a/smiley_pack/icons/fight/marine.gif b/smiley_pack/icons/fight/marine.gif new file mode 100644 index 00000000..88fd2e09 Binary files /dev/null and b/smiley_pack/icons/fight/marine.gif differ diff --git a/smiley_pack/icons/fight/sabre.gif b/smiley_pack/icons/fight/sabre.gif new file mode 100644 index 00000000..e6239682 Binary files /dev/null and b/smiley_pack/icons/fight/sabre.gif differ diff --git a/smiley_pack/icons/fight/samurai.gif b/smiley_pack/icons/fight/samurai.gif new file mode 100644 index 00000000..8b24385b Binary files /dev/null and b/smiley_pack/icons/fight/samurai.gif differ diff --git a/smiley_pack/icons/fight/tank.gif b/smiley_pack/icons/fight/tank.gif new file mode 100644 index 00000000..f1d969dd Binary files /dev/null and b/smiley_pack/icons/fight/tank.gif differ diff --git a/smiley_pack/icons/fight/viking.gif b/smiley_pack/icons/fight/viking.gif new file mode 100644 index 00000000..4908eddb Binary files /dev/null and b/smiley_pack/icons/fight/viking.gif differ diff --git a/smiley_pack/icons/food/apple.gif b/smiley_pack/icons/food/apple.gif new file mode 100644 index 00000000..969d4ca8 Binary files /dev/null and b/smiley_pack/icons/food/apple.gif differ diff --git a/smiley_pack/icons/food/banana.gif b/smiley_pack/icons/food/banana.gif new file mode 100644 index 00000000..d990d19d Binary files /dev/null and b/smiley_pack/icons/food/banana.gif differ diff --git a/smiley_pack/icons/food/broccoli.gif b/smiley_pack/icons/food/broccoli.gif new file mode 100644 index 00000000..f379889c Binary files /dev/null and b/smiley_pack/icons/food/broccoli.gif differ diff --git a/smiley_pack/icons/food/cake.gif b/smiley_pack/icons/food/cake.gif new file mode 100644 index 00000000..22d0ebd9 Binary files /dev/null and b/smiley_pack/icons/food/cake.gif differ diff --git a/smiley_pack/icons/food/carrot.gif b/smiley_pack/icons/food/carrot.gif new file mode 100644 index 00000000..387b94c1 Binary files /dev/null and b/smiley_pack/icons/food/carrot.gif differ diff --git a/smiley_pack/icons/food/cooking.gif b/smiley_pack/icons/food/cooking.gif new file mode 100644 index 00000000..e62fea06 Binary files /dev/null and b/smiley_pack/icons/food/cooking.gif differ diff --git a/smiley_pack/icons/food/fryegg.gif b/smiley_pack/icons/food/fryegg.gif new file mode 100644 index 00000000..bd1b4ff0 Binary files /dev/null and b/smiley_pack/icons/food/fryegg.gif differ diff --git a/smiley_pack/icons/food/popcorn.gif b/smiley_pack/icons/food/popcorn.gif new file mode 100644 index 00000000..b0ea6976 Binary files /dev/null and b/smiley_pack/icons/food/popcorn.gif differ diff --git a/smiley_pack/icons/food/tomato.gif b/smiley_pack/icons/food/tomato.gif new file mode 100644 index 00000000..0e3daddb Binary files /dev/null and b/smiley_pack/icons/food/tomato.gif differ diff --git a/smiley_pack/icons/happy/cloud9.gif b/smiley_pack/icons/happy/cloud9.gif new file mode 100644 index 00000000..801c1a39 Binary files /dev/null and b/smiley_pack/icons/happy/cloud9.gif differ diff --git a/smiley_pack/icons/happy/tearsofjoy.gif b/smiley_pack/icons/happy/tearsofjoy.gif new file mode 100644 index 00000000..5de31171 Binary files /dev/null and b/smiley_pack/icons/happy/tearsofjoy.gif differ diff --git a/smiley_pack/icons/laugh/hahaha.gif b/smiley_pack/icons/laugh/hahaha.gif new file mode 100644 index 00000000..37aa92a1 Binary files /dev/null and b/smiley_pack/icons/laugh/hahaha.gif differ diff --git a/smiley_pack/icons/laugh/loltv.gif b/smiley_pack/icons/laugh/loltv.gif new file mode 100644 index 00000000..3de6f778 Binary files /dev/null and b/smiley_pack/icons/laugh/loltv.gif differ diff --git a/smiley_pack/icons/laugh/rofl.gif b/smiley_pack/icons/laugh/rofl.gif new file mode 100644 index 00000000..a3bb03d6 Binary files /dev/null and b/smiley_pack/icons/laugh/rofl.gif differ diff --git a/smiley_pack/icons/love/iloveyou.gif b/smiley_pack/icons/love/iloveyou.gif new file mode 100644 index 00000000..7007515b Binary files /dev/null and b/smiley_pack/icons/love/iloveyou.gif differ diff --git a/smiley_pack/icons/love/inlove.gif b/smiley_pack/icons/love/inlove.gif new file mode 100644 index 00000000..30357af2 Binary files /dev/null and b/smiley_pack/icons/love/inlove.gif differ diff --git a/smiley_pack/icons/love/love.gif b/smiley_pack/icons/love/love.gif new file mode 100644 index 00000000..d8f0d5ba Binary files /dev/null and b/smiley_pack/icons/love/love.gif differ diff --git a/smiley_pack/icons/love/lovebear.gif b/smiley_pack/icons/love/lovebear.gif new file mode 100644 index 00000000..d13fd185 Binary files /dev/null and b/smiley_pack/icons/love/lovebear.gif differ diff --git a/smiley_pack/icons/love/lovebed.gif b/smiley_pack/icons/love/lovebed.gif new file mode 100644 index 00000000..c5783e0f Binary files /dev/null and b/smiley_pack/icons/love/lovebed.gif differ diff --git a/smiley_pack/icons/love/loveheart.gif b/smiley_pack/icons/love/loveheart.gif new file mode 100644 index 00000000..541220a9 Binary files /dev/null and b/smiley_pack/icons/love/loveheart.gif differ diff --git a/smiley_pack/icons/music/dj.gif b/smiley_pack/icons/music/dj.gif new file mode 100644 index 00000000..66bc075f Binary files /dev/null and b/smiley_pack/icons/music/dj.gif differ diff --git a/smiley_pack/icons/music/drums.gif b/smiley_pack/icons/music/drums.gif new file mode 100644 index 00000000..27215f4d Binary files /dev/null and b/smiley_pack/icons/music/drums.gif differ diff --git a/smiley_pack/icons/music/elvis.gif b/smiley_pack/icons/music/elvis.gif new file mode 100644 index 00000000..ebcdcccc Binary files /dev/null and b/smiley_pack/icons/music/elvis.gif differ diff --git a/smiley_pack/icons/music/guitar.gif b/smiley_pack/icons/music/guitar.gif new file mode 100644 index 00000000..11eccdd0 Binary files /dev/null and b/smiley_pack/icons/music/guitar.gif differ diff --git a/smiley_pack/icons/music/trumpet.gif b/smiley_pack/icons/music/trumpet.gif new file mode 100644 index 00000000..4595cccb Binary files /dev/null and b/smiley_pack/icons/music/trumpet.gif differ diff --git a/smiley_pack/icons/music/violin.gif b/smiley_pack/icons/music/violin.gif new file mode 100644 index 00000000..53592d6e Binary files /dev/null and b/smiley_pack/icons/music/violin.gif differ diff --git a/smiley_pack/icons/oldcore/beard.png b/smiley_pack/icons/oldcore/beard.png new file mode 100644 index 00000000..5d4b2846 Binary files /dev/null and b/smiley_pack/icons/oldcore/beard.png differ diff --git a/smiley_pack/icons/oldcore/headbang.gif b/smiley_pack/icons/oldcore/headbang.gif new file mode 100644 index 00000000..91ccb8bb Binary files /dev/null and b/smiley_pack/icons/oldcore/headbang.gif differ diff --git a/smiley_pack/icons/oldcore/laughing.gif b/smiley_pack/icons/oldcore/laughing.gif new file mode 100755 index 00000000..1bf29de7 Binary files /dev/null and b/smiley_pack/icons/oldcore/laughing.gif differ diff --git a/smiley_pack/icons/oldcore/shaka.gif b/smiley_pack/icons/oldcore/shaka.gif new file mode 100644 index 00000000..e5d7b703 Binary files /dev/null and b/smiley_pack/icons/oldcore/shaka.gif differ diff --git a/smiley_pack/icons/oldcore/surprised.gif b/smiley_pack/icons/oldcore/surprised.gif new file mode 100755 index 00000000..b0746532 Binary files /dev/null and b/smiley_pack/icons/oldcore/surprised.gif differ diff --git a/smiley_pack/icons/oldcore/whitebeard.png b/smiley_pack/icons/oldcore/whitebeard.png new file mode 100644 index 00000000..2a1fccbb Binary files /dev/null and b/smiley_pack/icons/oldcore/whitebeard.png differ diff --git a/smiley_pack/icons/respect/bow.gif b/smiley_pack/icons/respect/bow.gif new file mode 100644 index 00000000..ecc64847 Binary files /dev/null and b/smiley_pack/icons/respect/bow.gif differ diff --git a/smiley_pack/icons/respect/bravo.gif b/smiley_pack/icons/respect/bravo.gif new file mode 100644 index 00000000..34f72abb Binary files /dev/null and b/smiley_pack/icons/respect/bravo.gif differ diff --git a/smiley_pack/icons/respect/hailking.gif b/smiley_pack/icons/respect/hailking.gif new file mode 100644 index 00000000..07551e50 Binary files /dev/null and b/smiley_pack/icons/respect/hailking.gif differ diff --git a/smiley_pack/icons/respect/number1.gif b/smiley_pack/icons/respect/number1.gif new file mode 100644 index 00000000..ab5c410c Binary files /dev/null and b/smiley_pack/icons/respect/number1.gif differ diff --git a/smiley_pack/icons/sad/crying.png b/smiley_pack/icons/sad/crying.png new file mode 100644 index 00000000..62b9646d Binary files /dev/null and b/smiley_pack/icons/sad/crying.png differ diff --git a/smiley_pack/icons/sad/prisoner.gif b/smiley_pack/icons/sad/prisoner.gif new file mode 100644 index 00000000..f2c3181d Binary files /dev/null and b/smiley_pack/icons/sad/prisoner.gif differ diff --git a/smiley_pack/icons/smoking/smoking.gif b/smiley_pack/icons/smoking/smoking.gif new file mode 100644 index 00000000..77720b17 Binary files /dev/null and b/smiley_pack/icons/smoking/smoking.gif differ diff --git a/smiley_pack/icons/sport/archery.gif b/smiley_pack/icons/sport/archery.gif new file mode 100644 index 00000000..8b4b9f62 Binary files /dev/null and b/smiley_pack/icons/sport/archery.gif differ diff --git a/smiley_pack/icons/sport/basketball.gif b/smiley_pack/icons/sport/basketball.gif new file mode 100644 index 00000000..e9ad4b57 Binary files /dev/null and b/smiley_pack/icons/sport/basketball.gif differ diff --git a/smiley_pack/icons/sport/bowling.gif b/smiley_pack/icons/sport/bowling.gif new file mode 100644 index 00000000..0f8300c9 Binary files /dev/null and b/smiley_pack/icons/sport/bowling.gif differ diff --git a/smiley_pack/icons/sport/cycling.gif b/smiley_pack/icons/sport/cycling.gif new file mode 100644 index 00000000..332081e8 Binary files /dev/null and b/smiley_pack/icons/sport/cycling.gif differ diff --git a/smiley_pack/icons/sport/darts.gif b/smiley_pack/icons/sport/darts.gif new file mode 100644 index 00000000..09fb6ea9 Binary files /dev/null and b/smiley_pack/icons/sport/darts.gif differ diff --git a/smiley_pack/icons/sport/fencing.gif b/smiley_pack/icons/sport/fencing.gif new file mode 100644 index 00000000..a4ec5cd3 Binary files /dev/null and b/smiley_pack/icons/sport/fencing.gif differ diff --git a/smiley_pack/icons/sport/football.gif b/smiley_pack/icons/sport/football.gif new file mode 100644 index 00000000..c9fa6c5e Binary files /dev/null and b/smiley_pack/icons/sport/football.gif differ diff --git a/smiley_pack/icons/sport/golf.gif b/smiley_pack/icons/sport/golf.gif new file mode 100644 index 00000000..179fc52d Binary files /dev/null and b/smiley_pack/icons/sport/golf.gif differ diff --git a/smiley_pack/icons/sport/horseriding.gif b/smiley_pack/icons/sport/horseriding.gif new file mode 100644 index 00000000..13ca4503 Binary files /dev/null and b/smiley_pack/icons/sport/horseriding.gif differ diff --git a/smiley_pack/icons/sport/juggling.gif b/smiley_pack/icons/sport/juggling.gif new file mode 100644 index 00000000..1a2eb60b Binary files /dev/null and b/smiley_pack/icons/sport/juggling.gif differ diff --git a/smiley_pack/icons/sport/skipping.gif b/smiley_pack/icons/sport/skipping.gif new file mode 100644 index 00000000..f63270b1 Binary files /dev/null and b/smiley_pack/icons/sport/skipping.gif differ diff --git a/smiley_pack/icons/sport/snooker.gif b/smiley_pack/icons/sport/snooker.gif new file mode 100644 index 00000000..fa2e6a84 Binary files /dev/null and b/smiley_pack/icons/sport/snooker.gif differ diff --git a/smiley_pack/icons/sport/surfing.gif b/smiley_pack/icons/sport/surfing.gif new file mode 100644 index 00000000..b75d74b9 Binary files /dev/null and b/smiley_pack/icons/sport/surfing.gif differ diff --git a/smiley_pack/icons/sport/tennis.gif b/smiley_pack/icons/sport/tennis.gif new file mode 100644 index 00000000..36e47bf9 Binary files /dev/null and b/smiley_pack/icons/sport/tennis.gif differ diff --git a/smiley_pack/icons/tired/countsheep.gif b/smiley_pack/icons/tired/countsheep.gif new file mode 100644 index 00000000..815b090f Binary files /dev/null and b/smiley_pack/icons/tired/countsheep.gif differ diff --git a/smiley_pack/icons/tired/hammock.gif b/smiley_pack/icons/tired/hammock.gif new file mode 100644 index 00000000..8639dd32 Binary files /dev/null and b/smiley_pack/icons/tired/hammock.gif differ diff --git a/smiley_pack/icons/tired/pillow.gif b/smiley_pack/icons/tired/pillow.gif new file mode 100644 index 00000000..367f65ed Binary files /dev/null and b/smiley_pack/icons/tired/pillow.gif differ diff --git a/smiley_pack/smiley_pack.php b/smiley_pack/smiley_pack.php new file mode 100644 index 00000000..d85f9b5e --- /dev/null +++ b/smiley_pack/smiley_pack.php @@ -0,0 +1,485 @@ +get_baseurl() . '/addon/smiley_pack/icons/animals/bunnyflowers.gif' . '" alt="' . ':bunnyflowers' . '" />'; + + $b['texts'][] = ':chick'; + $b['icons'][] = '' . ':chick' . ''; + + $b['texts'][] = ':bumblebee'; + $b['icons'][] = '' . ':bee' . ''; + + $b['texts'][] = ':ladybird'; + $b['icons'][] = '' . ':ladybird' . ''; + + $b['texts'][] = ':bigspider'; + $b['icons'][] = '' . ':bigspider' . ''; + + $b['texts'][] = ':cat'; + $b['icons'][] = '' . ':cat' . ''; + + $b['texts'][] = ':bunny'; + $b['icons'][] = '' . ':bunny' . ''; + + $b['texts'][] = ':chick'; + $b['icons'][] = '' . ':chick' . ''; + + $b['texts'][] = ':cow'; + $b['icons'][] = '' . ':cow' . ''; + + $b['texts'][] = ':crab'; + $b['icons'][] = '' . ':crab' . ''; + + $b['texts'][] = ':dolphin'; + $b['icons'][] = '' . ':dolphin' . ''; + + $b['texts'][] = ':dragonfly'; + $b['icons'][] = '' . ':dragonfly' . ''; + + $b['texts'][] = ':frog'; + $b['icons'][] = '' . ':frog' . ''; + + $b['texts'][] = ':hamster'; + $b['icons'][] = '' . ':hamster' . ''; + + $b['texts'][] = ':monkey'; + $b['icons'][] = '' . ':monkey' . ''; + + $b['texts'][] = ':horse'; + $b['icons'][] = '' . ':horse' . ''; + + $b['texts'][] = ':parrot'; + $b['icons'][] = '' . ':parrot' . ''; + + $b['texts'][] = ':tux'; + $b['icons'][] = '' . ':tux' . ''; + + $b['texts'][] = ':snail'; + $b['icons'][] = '' . ':snail' . ''; + + $b['texts'][] = ':sheep'; + $b['icons'][] = '' . ':sheep' . ''; + + $b['texts'][] = ':dog'; + $b['icons'][] = '' . ':dog' . ''; + + $b['texts'][] = ':elephant'; + $b['icons'][] = '' . ':elephant' . ''; + + $b['texts'][] = ':fish'; + $b['icons'][] = '' . ':fish' . ''; + + $b['texts'][] = ':giraffe'; + $b['icons'][] = '' . ':giraffe' . ''; + + $b['texts'][] = ':pig'; + $b['icons'][] = '' . ':pig' . ''; + + + +#Baby Smileys + + $b['texts'][] = ':baby'; + $b['icons'][] = '' . ':baby' . ''; + + $b['texts'][] = ':babycot'; + $b['icons'][] = '' . ':babycot' . ''; + + + $b['texts'][] = ':pregnant'; + $b['icons'][] = '' . ':pregnant' . ''; + + $b['texts'][] = ':stork'; + $b['icons'][] = '' . ':stork' . ''; + + +#Confused Smileys + $b['texts'][] = ':confused'; + $b['icons'][] = '' . ':confused' . ''; + + $b['texts'][] = ':shrug'; + $b['icons'][] = '' . ':shrug' . ''; + + $b['texts'][] = ':stupid'; + $b['icons'][] = '' . ':stupid' . ''; + + $b['texts'][] = ':dazed'; + $b['icons'][] = '' . ':dazed' . ''; + + +#Cool Smileys + + $b['texts'][] = ':affro'; + $b['icons'][] = '' . ':affro' . ''; + + $b['texts'][] = ':cool'; + $b['icons'][] = '' . ':cool' . ''; + +#Devil/Angel Smileys + + $b['texts'][] = ':angel'; + $b['icons'][] = '' . ':angel' . ''; + + $b['texts'][] = ':cherub'; + $b['icons'][] = '' . ':cherub' . ''; + + $b['texts'][] = ':devilangel'; + $b['icons'][] = '' . ':devilangel' . ''; + + $b['texts'][] = ':catdevil'; + $b['icons'][] = '' . ':catdevil' . ''; + + $b['texts'][] = ':devillish'; + $b['icons'][] = '' . ':devillish' . ''; + + $b['texts'][] = ':daseesaw'; + $b['icons'][] = '' . ':daseesaw' . ''; + + $b['texts'][] = ':turnevil'; + $b['icons'][] = '' . ':turnevil' . ''; + + $b['texts'][] = ':saint'; + $b['icons'][] = '' . ':saint' . ''; + + $b['texts'][] = ':graveside'; + $b['icons'][] = '' . ':graveside' . ''; + +#Unpleasent smileys. + + $b['texts'][] = ':toilet'; + $b['icons'][] = '' . ':toilet' . ''; + + $b['texts'][] = ':fartinbed'; + $b['icons'][] = '' . ':fartinbed' . ''; + + $b['texts'][] = ':vomit'; + $b['icons'][] = '' . ':vomit' . ''; + + $b['texts'][] = ':fartblush'; + $b['icons'][] = '' . ':fartblush' . ''; + +#Drinks + + $b['texts'][] = ':tea'; + $b['icons'][] = '' . ':tea' . ''; + + $b['texts'][] = ':drool'; + $b['icons'][] = '' . ':drool' . ''; + +#Sad smileys + + $b['texts'][] = ':crying'; + $b['icons'][] = '' . ':crying' . ''; + + $b['texts'][] = ':prisoner'; + $b['icons'][] = '' . ':prisoner' . ''; + +#Smoking - only one smiley in here, maybe it needs moving elsewhere? + + $b['texts'][] = ':smoking'; + $b['icons'][] = '' . ':smoking' . ''; + +#Sport smileys + + $b['texts'][] = ':basketball'; + $b['icons'][] = '' . ':basketball' . ''; + + $b['texts'][] = ':bowling'; + $b['icons'][] = '' . ':bowling' . ''; + + $b['texts'][] = ':cycling'; + $b['icons'][] = '' . ':cycling' . ''; + + $b['texts'][] = ':darts'; + $b['icons'][] = '' . ':darts' . ''; + + $b['texts'][] = ':fencing'; + $b['icons'][] = '' . ':fencing' . ''; + + $b['texts'][] = ':golf'; + $b['icons'][] = '' . ':golf' . ''; + + $b['texts'][] = ':juggling'; + $b['icons'][] = '' . ':juggling' . ''; + + $b['texts'][] = ':skipping'; + $b['icons'][] = '' . ':skipping' . ''; + + $b['texts'][] = ':archery'; + $b['icons'][] = '' . ':archery' . ''; + + $b['texts'][] = ':football'; + $b['icons'][] = '' . ':football' . ''; + + $b['texts'][] = ':surfing'; + $b['icons'][] = '' . ':surfing' . ''; + + $b['texts'][] = ':snooker'; + $b['icons'][] = '' . ':snooker' . ''; + + $b['texts'][] = ':tennis'; + $b['icons'][] = '' . ':tennis' . ''; + + $b['texts'][] = ':horseriding'; + $b['icons'][] = '' . ':horseriding' . ''; + +#Love smileys + + $b['texts'][] = ':iloveyou'; + $b['icons'][] = '' . ':iloveyou' . ''; + + $b['texts'][] = ':inlove'; + $b['icons'][] = '' . ':inlove' . ''; + + $b['texts'][] = '~love'; + $b['icons'][] = '' . ':love' . ''; + + $b['texts'][] = ':lovebear'; + $b['icons'][] = '' . ':lovebear' . ''; + + $b['texts'][] = ':lovebed'; + $b['icons'][] = '' . ':lovebed' . ''; + + $b['texts'][] = ':loveheart'; + $b['icons'][] = '' . ':loveheart' . ''; + +#Tired/Sleep smileys + + $b['texts'][] = ':countsheep'; + $b['icons'][] = '' . ':countsheep' . ''; + + $b['texts'][] = ':hammock'; + $b['icons'][] = '' . ':hammock' . ''; + + $b['texts'][] = ':pillow'; + $b['icons'][] = '' . ':pillow' . ''; + +#Fight/Flame/Violent smileys + + $b['texts'][] = ':2guns'; + $b['icons'][] = '' . ':2guns' . ''; + + $b['texts'][] = ':alienfight'; + $b['icons'][] = '' . ':alienfight' . ''; + + $b['texts'][] = ':army'; + $b['icons'][] = '' . ':army' . ''; + + $b['texts'][] = ':arrowhead'; + $b['icons'][] = '' . ':arrowhead' . ''; + + $b['texts'][] = ':bfg'; + $b['icons'][] = '' . ':bfg' . ''; + + $b['texts'][] = ':bowman'; + $b['icons'][] = '' . ':bowman' . ''; + + $b['texts'][] = ':chainsaw'; + $b['icons'][] = '' . ':chainsaw' . ''; + + $b['texts'][] = ':crossbow'; + $b['icons'][] = '' . ':crossbow' . ''; + + $b['texts'][] = ':crusader'; + $b['icons'][] = '' . ':crusader' . ''; + + $b['texts'][] = ':dead'; + $b['icons'][] = '' . ':dead' . ''; + + $b['texts'][] = ':hammersplat'; + $b['icons'][] = '' . ':hammersplat' . ''; + + $b['texts'][] = ':lasergun'; + $b['icons'][] = '' . ':lasergun' . ''; + + $b['texts'][] = ':machinegun'; + $b['icons'][] = '' . ':machinegun' . ''; + + $b['texts'][] = ':marine'; + $b['icons'][] = '' . ':marine' . ''; + + $b['texts'][] = ':sabre'; + $b['icons'][] = '' . ':sabre' . ''; + + $b['texts'][] = ':tank'; + $b['icons'][] = '' . ':tank' . ''; + + $b['texts'][] = ':viking'; + $b['icons'][] = '' . ':viking' . ''; + + $b['texts'][] = ':gangs'; + $b['icons'][] = '' . ':gangs' . ''; + + $b['texts'][] = ':acid'; + $b['icons'][] = '' . ':acid' . ''; + +#Fantasy smileys - monsters and dragons fantasy. The other type of fantasy belongs in adult smileys + + $b['texts'][] = ':alienmonster'; + $b['icons'][] = '' . ':alienmonster' . ''; + + $b['texts'][] = ':barbarian'; + $b['icons'][] = '' . ':barbarian' . ''; + + $b['texts'][] = ':dinosaur'; + $b['icons'][] = '' . ':dinosaur' . ''; + + $b['texts'][] = ':dragon'; + $b['icons'][] = '' . ':dragon' . ''; + + $b['texts'][] = ':draco'; + $b['icons'][] = '' . ':draco' . ''; + + $b['texts'][] = ':ghost'; + $b['icons'][] = '' . ':ghost' . ''; + + $b['texts'][] = ':mummy'; + $b['icons'][] = '' . ':mummy' . ''; + +#Food smileys + + $b['texts'][] = ':apple'; + $b['icons'][] = '' . ':apple' . ''; + + $b['texts'][] = ':broccoli'; + $b['icons'][] = '' . ':brocolli' . ''; + + $b['texts'][] = ':cake'; + $b['icons'][] = '' . ':cake' . ''; + + $b['texts'][] = ':carrot'; + $b['icons'][] = '' . ':carrot' . ''; + + $b['texts'][] = ':popcorn'; + $b['icons'][] = '' . ':popcorn' . ''; + + $b['texts'][] = ':tomato'; + $b['icons'][] = '' . ':tomato' . ''; + + $b['texts'][] = ':banana'; + $b['icons'][] = '' . ':banana' . ''; + + $b['texts'][] = ':cooking'; + $b['icons'][] = '' . ':cooking' . ''; + + $b['texts'][] = ':fryegg'; + $b['icons'][] = '' . ':fryegg' . ''; + +#Happy smileys + + $b['texts'][] = ':cloud9'; + $b['icons'][] = '' . ':cloud9' . ''; + + $b['texts'][] = ':tearsofjoy'; + $b['icons'][] = '' . ':tearsofjoy' . ''; + +#Repsect smileys + + $b['texts'][] = ':bow'; + $b['icons'][] = '' . ':bow' . ''; + + $b['texts'][] = ':bravo'; + $b['icons'][] = '' . ':bravo' . ''; + + $b['texts'][] = ':hailking'; + $b['icons'][] = '' . ':hailking' . ''; + + $b['texts'][] = ':number1'; + $b['icons'][] = '' . ':number1' . ''; + +#Laugh smileys + + $b['texts'][] = ':hahaha'; + $b['icons'][] = '' . ':hahaha' . ''; + + $b['texts'][] = ':loltv'; + $b['icons'][] = '' . ':loltv' . ''; + + $b['texts'][] = ':rofl'; + $b['icons'][] = '' . ':rofl' . ''; + +#Music smileys + + $b['texts'][] = ':dj'; + $b['icons'][] = '' . ':dj' . ''; + + $b['texts'][] = ':drums'; + $b['icons'][] = '' . ':drums' . ''; + + $b['texts'][] = ':elvis'; + $b['icons'][] = '' . ':elivs' . ''; + + $b['texts'][] = ':guitar'; + $b['icons'][] = '' . ':guitar' . ''; + + $b['texts'][] = ':trumpet'; + $b['icons'][] = '' . ':trumpet' . ''; + + $b['texts'][] = ':violin'; + $b['icons'][] = '' . ':violin' . ''; + +#Smileys that used to be in core + + $b['texts'][] = ':headbang'; + $b['icons'][] = '' . ':headbang' . ''; + + $b['texts'][] = ':beard'; + $b['icons'][] = '' . ':beard' . ''; + + $b['texts'][] = ':whitebeard'; + $b['icons'][] = '' . ':whitebeard' . ''; + + $b['texts'][] = ':shaka'; + $b['icons'][] = '' . ':shaka' . ''; + + $b['texts'][] = ':\\.../'; + $b['icons'][] = '' . ':\\.../' . ''; + + $b['texts'][] = ':\\ooo/'; + $b['icons'][] = '' . ':\\ooo/' . ''; + + $b['texts'][] = ':headdesk'; + $b['icons'][] = '' . ':headdesk' . ''; + +#These two are still in core, so oldcore isn't strictly right, but we don't want too many directories + + $b['texts'][] = ':-d'; + $b['icons'][] = '' . ':-d' . ''; + + $b['texts'][] = ':-o'; + $b['icons'][] = '' . ':-o' . ''; + + + + +} diff --git a/viewsrc/viewsrc.php b/viewsrc/viewsrc.php index e39fe8a6..a610b76c 100644 --- a/viewsrc/viewsrc.php +++ b/viewsrc/viewsrc.php @@ -11,13 +11,25 @@ function viewsrc_install() { register_hook('item_photo_menu', 'addon/viewsrc/viewsrc.php', 'viewsrc_item_photo_menu'); + register_hook('page_end', 'addon/viewsrc/viewsrc.php', 'viewsrc_page_end'); } function viewsrc_uninstall() { unregister_hook('item_photo_menu', 'addon/viewsrc/viewsrc.php', 'viewsrc_item_photo_menu'); + unregister_hook('page_end', 'addon/viewsrc/viewsrc.php', 'viewsrc_page_end'); + } +function viewsrc_page_end(&$a, &$o){ + $a->page['htmlhead'] .= <<< EOS + +EOS; +} function viewsrc_item_photo_menu(&$a,&$b) { if(! local_user()) diff --git a/widgets/widgets.php b/widgets/widgets.php index 27cabfd6..47a6e48a 100755 --- a/widgets/widgets.php +++ b/widgets/widgets.php @@ -19,7 +19,8 @@ function widgets_uninstall() { function widgets_settings_post(){ - + if(! local_user()) + return; if (isset($_POST['widgets-submit'])){ del_pconfig(local_user(), 'widgets', 'key');