From d0fa37e8ea7c3ad450d9920ba6224b2e10a5e56a Mon Sep 17 00:00:00 2001 From: Klaus Weidenbach Date: Mon, 9 Apr 2012 00:50:48 +0200 Subject: [PATCH 1/6] Add Gravatar plugin. This plugin provides the default gravatar lookup feature that has been in friendica's core before. In addition it lets you choose the default avatar image type and select the allowed image rating. --- gravatar/README.md | 42 +++++++++++++++++ gravatar/admin.tpl | 3 ++ gravatar/gravatar.php | 104 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 149 insertions(+) create mode 100644 gravatar/README.md create mode 100644 gravatar/admin.tpl create mode 100644 gravatar/gravatar.php diff --git a/gravatar/README.md b/gravatar/README.md new file mode 100644 index 00000000..ff209b0e --- /dev/null +++ b/gravatar/README.md @@ -0,0 +1,42 @@ +# Gravatar Plugin +by [Klaus Weidenbach](http://friendica.dszdw.net/profile/klaus) + +This addon allows you to look up an avatar image for new users and contacts at [Gravatar](http://www.gravatar.com). This will be used if there have not been found any other avatar images yet for example through OpenID. + +Gravatar is a popular, but centralized and proprietary service where people can store an avatar image for their email-addresses. It is widely used on many pages, for example to display an avatar for comment functions, profile pages, etc. + +* * * + +# Configuration +## Default Avatar Image +If no avatar was found for an email Gravatar can create some pseudo-random generated avatars based on an email hash. You can choose between these presets: + +* __Gravatar__: default static Gravatar logo +* __MM__: (mystery-man) a static image +* __Identicon__: a generated geometric pattern based on email hash +* __Monsterid__: a generated 'monster' with different colors, faces, etc. based on email hash +* __Wavatar__: faces with different features and backgrounds based on email hash +* __Retro__: 8-bit arcade-styled pixelated faces based on email hash + +See examples at [Gravatar][1]. +## Avatar Rating +Gravatar lets users self-rate their images to be used at appropriate audiences. Choose which are appropriate for your friendica site: + +* __g__: suitable for display on all wesites with any audience type +* __pg__: may contain rude gestures, provocatively dressed individuals, the lesser swear words, or mild violence +* __r__: may contain such things as harsh profanity, intense violence, nudity, or hard drug use +* __x__: may contain hardcore sexual imagery or extremely disurbing violence + +See more information at [Gravatar][1]. + +## Alternative Configuration +Open the .htconfig.php file and add "gravatar" to the list of activated addons: + + $a->config['system']['addon'] = "..., gravatar"; + +You can add two configuration variables for the addon: + + $a->config['gravatar']['default_avatar'] = "identicon"; + $a->config['gravatar']['rating'] = "g"; + +[1]: http://www.gravatar.com/site/implement/images/ "See documentation at Gravatar for more information" diff --git a/gravatar/admin.tpl b/gravatar/admin.tpl new file mode 100644 index 00000000..83144e43 --- /dev/null +++ b/gravatar/admin.tpl @@ -0,0 +1,3 @@ +{{ inc field_select.tpl with $field=$default_avatar}}{{ endinc }} +{{ inc field_select.tpl with $field=$rating }}{{ endinc }} +
diff --git a/gravatar/gravatar.php b/gravatar/gravatar.php new file mode 100644 index 00000000..4464cd2c --- /dev/null +++ b/gravatar/gravatar.php @@ -0,0 +1,104 @@ + + */ + +/** + * Installs the plugin hook + */ +function gravatar_install() { + register_hook('avatar_lookup', 'addon/gravatar/gravatar.php', 'gravatar_lookup'); + + logger("installed gravatar"); +} + +/** + * Removes the plugin hook + */ +function gravatar_uninstall() { + unregister_hook('avatar_lookup', 'addon/gravatar/gravatar.php', 'gravatar_lookup'); + + logger("uninstalled gravatar"); +} + +/** + * Looks up the avatar at gravatar.com and returns the URL. + * + * @param $a array + * @param &$b array + */ +function gravatar_lookup($a, &$b) { + $default_avatar = get_config('gravatar', 'default_img'); + $rating = get_config('gravatar', 'rating'); + + // setting default value if nothing configured + if(! $default_avatar) + $default_avatar = 'identicon'; // pseudo-random geometric pattern based on email hash + if(! $rating) + $rating = 'g'; // suitable for display on all websites with any audience type + + $hash = md5(trim(strtolower($b['email']))); + + $url = 'http://www.gravatar.com/avatar/' .$hash .'.jpg'; + $url .= '?s=' .$b['size'] .'&r=' .$rating; + if ($default_avatar != "gravatar") + $url .= '&d=' .$default_avatar; + + $b['url'] = $url; +} + +/** + * Display admin settings for this addon + */ +function gravatar_plugin_admin (&$a, &$o) { + $t = file_get_contents( dirname(__file__)."/admin.tpl"); + + $default_avatar = get_config('gravatar', 'default_img'); + $rating = get_config('gravatar', 'rating'); + + // set default values for first configuration + if(! $default_avatar) + $default_avatar = 'identicon'; // pseudo-random geometric pattern based on email hash + if(! $rating) + $rating = 'g'; // suitable for display on all websites with any audience type + + // Available options for the select boxes + $default_avatars = array( + 'gravatar' => 'Gravatar', + 'mm' => 'MM', + 'identicon' => 'Identicon', + 'monsterid' => 'Monsterid', + 'wavatar' => 'Wavatar', + 'retro' => 'Retro' + ); + $ratings = array( + 'g' => 'g', + 'pg' => 'pg', + 'r' => 'r', + 'x' => 'x' + ); + + $o = ''; + $o .= replace_macros( $t, array( + '$submit' => t('Submit'), + '$default_avatar' => array('avatar', t('Default avatar image'), $default_avatar, t('Select default avatar image if none was found at Gravatar. See README'), $default_avatars), + '$rating' => array('rating', t('Rating of images'), $rating, t('Select the appropriate avatar rating for your site. See README'), $ratings), + )); +} + +/** + * Save admin settings + */ +function gravatar_plugin_admin_post (&$a) { + check_form_security_token('gravatarsave'); + + $default_avatar = ((x($_POST, 'avatar')) ? notags(trim($_POST['avatar'])) : 'identicon'); + $rating = ((x($_POST, 'rating')) ? notags(trim($_POST['rating'])) : 'g'); + set_config('gravatar', 'default_img', $default_avatar); + set_config('gravatar', 'rating', $rating); + info( t('Gravatar settings updated.') .EOL); +} +?> From bf09c24e1588ff986ef208d773bc9cddc7002342 Mon Sep 17 00:00:00 2001 From: tony baldwin Date: Tue, 10 Apr 2012 08:44:31 -0400 Subject: [PATCH 2/6] added Random Planets, Empirial Version Also, "blogger", but that is still in progress and untested. --- blogger/blogger.css | 16 ++++ blogger/blogger.php | 200 ++++++++++++++++++++++++++++++++++++++++++++ planets.tar.gz | Bin 0 -> 10240 bytes planets/planets.css | 14 ++++ planets/planets.php | 181 +++++++++++++++++++++++++++++++++++++++ 5 files changed, 411 insertions(+) create mode 100755 blogger/blogger.css create mode 100755 blogger/blogger.php create mode 100644 planets.tar.gz create mode 100755 planets/planets.css create mode 100755 planets/planets.php diff --git a/blogger/blogger.css b/blogger/blogger.css new file mode 100755 index 00000000..4e2294e5 --- /dev/null +++ b/blogger/blogger.css @@ -0,0 +1,16 @@ + +#blogger-enable-label, #blogger-username-label, #blogger-password-label, #blogger-bydefault-label { + float: left; + width: 200px; + margin-top: 10px; +} + +#blogger-checkbox, #blogger-username, #blogger-password, #blogger-bydefault { + float: left; + margin-top: 10px; +} + +#blogger-submit { + margin-top: 15px; +} + diff --git a/blogger/blogger.php b/blogger/blogger.php new file mode 100755 index 00000000..5c9b4399 --- /dev/null +++ b/blogger/blogger.php @@ -0,0 +1,200 @@ + + */ + +function blpost_install() { + register_hook('post_local', 'addon/blpost/blpost.php', 'blpost_post_local'); + register_hook('notifier_normal', 'addon/blpost/blpost.php', 'blpost_send'); + register_hook('jot_networks', 'addon/blpost/blpost.php', 'blpost_jot_nets'); + register_hook('connector_settings', 'addon/blpost/blpost.php', 'blpost_settings'); + register_hook('connector_settings_post', 'addon/blpost/blpost.php', 'blpost_settings_post'); + +} +function blpost_uninstall() { + unregister_hook('post_local', 'addon/blpost/blpost.php', 'blpost_post_local'); + unregister_hook('notifier_normal', 'addon/blpost/blpost.php', 'blpost_send'); + unregister_hook('jot_networks', 'addon/blpost/blpost.php', 'blpost_jot_nets'); + unregister_hook('connector_settings', 'addon/blpost/blpost.php', 'blpost_settings'); + unregister_hook('connector_settings_post', 'addon/blpost/blpost.php', 'blpost_settings_post'); + + // obsolete - remove + unregister_hook('post_local_end', 'addon/blpost/blpost.php', 'blpost_send'); + unregister_hook('plugin_settings', 'addon/blpost/blpost.php', 'blpost_settings'); + unregister_hook('plugin_settings_post', 'addon/blpost/blpost.php', 'blpost_settings_post'); + +} + + +function blpost_jot_nets(&$a,&$b) { + if(! local_user()) + return; + + $bl_post = get_pconfig(local_user(),'blpost','post'); + if(intval($bl_post) == 1) { + $bl_defpost = get_pconfig(local_user(),'blpost','post_by_default'); + $selected = ((intval($bl_defpost) == 1) ? ' checked="checked" ' : ''); + $b .= '
' + . t('Post to blogger') . '
'; + } +} + + +function blpost_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(),'blpost','post'); + + $checked = (($enabled) ? ' checked="checked" ' : ''); + + $def_enabled = get_pconfig(local_user(),'blpost','post_by_default'); + + $def_checked = (($def_enabled) ? ' checked="checked" ' : ''); + + $bl_username = get_pconfig(local_user(), 'blpost', 'bl_username'); + $bl_password = get_pconfig(local_user(), 'blpost', 'bl_password'); + $bl_blog = get_pconfig(local_user(), 'blpost', 'bl_blog'); + + + /* Add some HTML to the existing form */ + + $s .= '
'; + $s .= '

' . t('Blogger Post Settings') . '

'; + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + /* provide a submit button */ + + $s .= '
'; + +} + + +function blpost_settings_post(&$a,&$b) { + + if(x($_POST,'blpost-submit')) { + + set_pconfig(local_user(),'blpost','post',intval($_POST['blpost'])); + set_pconfig(local_user(),'blpost','post_by_default',intval($_POST['bl_bydefault'])); + set_pconfig(local_user(),'blpost','bl_username',trim($_POST['bl_username'])); + set_pconfig(local_user(),'blpost','bl_password',trim($_POST['bl_password'])); + set_pconfig(local_user(),'blpost','bl_blog',trim($_POST['bl_blog'])); + + } + +} + +function blpost_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; + + $bl_post = intval(get_pconfig(local_user(),'blpost','post')); + + $bl_enable = (($bl_post && x($_REQUEST,'blpost_enable')) ? intval($_REQUEST['blpost_enable']) : 0); + + if($_REQUEST['api_source'] && intval(get_pconfig(local_user(),'blpost','post_by_default'))) + $bl_enable = 1; + + if(! $bl_enable) + return; + + if(strlen($b['postopts'])) + $b['postopts'] .= ','; + $b['postopts'] .= 'blpost'; +} + + + + +function blpost_send(&$a,&$b) { + + if($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) + return; + + if(! strstr($b['postopts'],'blpost')) + return; + + if($b['parent'] != $b['id']) + return; + + + $bl_username = xmlify(get_pconfig($b['uid'],'blpost','bl_username')); + $bl_password = xmlify(get_pconfig($b['uid'],'blpost','bl_password')); + $bl_blog = get_pconfig($b['uid'],'blpost','bl_blog'); + + if($bl_username && $bl_password && $bl_blog) { + + require_once('include/bbcode.php'); + + $title = '' . (($b['title']) ? $b['title'] : t('Post from Friendica')) . ''; + $post = $title . bbcode($b['body']); + $post = xmlify($post); + + $xml = <<< EOT + + + blogger.newPost + + + + $bl_username + $bl_password + $post + 1 + + + +EOT; + + logger('blpost: data: ' . $xml, LOGGER_DATA); + + if($bl_blog !== 'test') + $x = post_url($bl_blog,$xml); + logger('posted to blogger: ' . (($x) ? $x : ''), LOGGER_DEBUG); + + } +} + diff --git a/planets.tar.gz b/planets.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..30f81dece54bf60586b90d7cc3038cbe47c44d0b GIT binary patch literal 10240 zcmeHLYfl?V7Ue7aiaQ=FZL-G3KoW@oA|}a9qD&qNnH{Z|$SQZ2-Mw^owW_KiWR?Fu z=hnm6Jm!(jd|0g!(2uG*b)VZTO6v}U;WH~wtn=h1@)YkbAe^{aa~8a>(@ZSU;u zKEn8Dw6il>qX&PZOmpbgSfPp5v{H8d@|K%F8oy=9|H7*#_&;0+P2PNUvDv|Q`+qcg z_;7D++5fwHqun*y{_2w40{DOK|AWWy_{Q-5{SCTLuSF&I>7A%ERS_a0mHhUpG^s8c zTc~=UPDIs|l77&Itg|8&nAXmUdML6?)dM<_mIUbq1iHv&O^q_PsAmJl`=`{#VT}gc z{CwQnTk9hUMp95n#3<)hs z%UNNp)H0)s!scXiN#+u7Dgr#7c>W-_sj8>Nj3b{Inq}mXuGl*AL#K&fmV7u(oSw-C zI;6yFKI;4HPG8z|kbDPR;E^F{Y6<)QI^KN@IbtG4M&WN8q`#l zy-k|7b;=lhDpe`~zzTR#hCJ2%V+E2vuZG2;e!?ROZ_A4F1F5OI_rBtpFBV?#Of4&Q z4*01?0Pr$zfHtU5!k%7sUL0(BQIsXI67zk=ZGBVrVAkQr#zs_!LyU{hf~No3*jVRa zTnE1U_ome_Tctvr!IRiXSS!-pdr?d2L)8r2g7=VmT4-ZgpMN8}snLbfWEB~!G=dNT z%4RHGP`X9D5Q448h#BWfo%Iq9+OeCO^rN|N;Y%Kjnz$vrI@$d0N|h*BO&2m*lpjK| zmA&K1NXtoLs1Y;SCnOPx()cM3;%WjUBi@GGu&@Az4{A!aM0~iVZIj{Ft!s_cFoT>T zF6vZzOWmck%ja?2>Q8GvUjW5#7;+hN%vSo#z7LHqA!We^_!r}F8a&f;duW;)c@A;8|%^Yk*Kcu{U)`{ z6SCJ8eY)2zK>wR`Jp_(H&s-NS1d1+-fVy}!(^oJ~BqQ+SxjK`Xr=nuo`^IZCW;*C?ZbGslN{yp;93CA#4i&h zGR&13#~rS4U?5OFc3Ve|+g8`ia)5Sb3c&QuAvrsrCT)==A9y3)>8X-jivZK01Au*@ zx~D%_{4uL=4K#o>Fn4V|4q!sfa{kKUFPPFz;KCHeN2gF>4Y5~LB{2YB$C2KJ$<$_BB zz~++jp#-|Hc=NK)Wdk7>y^o;FloQR^b~^Q8`5fGy7}S1W43C^R3?+5gRL8Q>14|ozQA1KmjPUgG_Zz zi@Jl}8AKCx(ofzCtB{Qnw@<}P zO$2VXmbwy>ADeF918wJa)C zWDepMExvCj=zz84_fOFp5`lg*+A>(dY0Qv`wHog3xfykha zB2(4YwinUEZjtNat}zV99NP2A{Sg-LM-r-;-*Su2YF7hy_B_sfIp$&(RRq6H(YA-?9?krfS$@Yby?Zdqy{_@?i3`TNY{G{m ziaQ&7SxS?G85Xx>*M&oY^E+3vxqPl?sf$#`BDQtJXO7b(w^f--fvQad9B~iIqCUf^ zusrNs?b0E#myJB^SozToQ)4=m<7{!*Noe3s&0Gm5!pK(h;dMZX|2i-X93HO&EafFh zhbjp=JnX>c9U30-%g(R**Sf=L0!@Ep)le4F7F33^&ehwM7*;A&<#VA6F0DZ$@9_+Y zdS_j}86SuOi#P4b$>nXA;{>-ueS`3`3JR^BxR&#=-)| zEwaN-F!+{NV(UVS2CdgJcqt~bylu7{Kw(z;3drd_Q6B*TA3>mJuAQMMm(P+Yl|xt( ztf*ZBuprtTF~ro>Gk>v|@7y8eZHwm-+Z!YLH7eMCj@zdv~q@x3`lg|i0+Hqf7=CTL2>fCU3oE=mP zCOz@o<~+;U;03=D|MSKzUopS<)h#*s#aMSO{Qd90+uNgukK*^=-R->*zW?v;ZSSnU z|K4TKulXKD@7rrM;TZvCd5ZIb-KSDcEfVaa$ZWn(JKNjMM?6+Sl?7H7SXp3Yft3YT7FbzeWr39i{)7d716~Na AzyJUM literal 0 HcmV?d00001 diff --git a/planets/planets.css b/planets/planets.css new file mode 100755 index 00000000..668b65bc --- /dev/null +++ b/planets/planets.css @@ -0,0 +1,14 @@ + + + +#planets-enable-label { + float: left; + width: 200px; + margin-bottom: 25px; +} + +#planets-checkbox { + float: left; +} + + diff --git a/planets/planets.php b/planets/planets.php new file mode 100755 index 00000000..62ba675b --- /dev/null +++ b/planets/planets.php @@ -0,0 +1,181 @@ + + * + * + * + * + * Addons are registered with the system in the + * .htconfig.php file. + * + * $a->config['system']['addon'] = 'plugin1,plugin2,etc.'; + * + * When registration is detected, the system calls the plugin + * name_install() function, located in 'addon/name/name.php', + * where 'name' is the name of the addon. + * If the addon is removed from the configuration list, the + * system will call the name_uninstall() function. + * + */ + + +function planets_install() { + + /** + * + * Our demo plugin will attach in three places. + * The first is just prior to storing a local post. + * + */ + + register_hook('post_local', 'addon/planets/planets.php', 'planets_post_hook'); + + /** + * + * Then we'll attach into the plugin settings page, and also the + * settings post hook so that we can create and update + * user preferences. + * + */ + + register_hook('plugin_settings', 'addon/planets/planets.php', 'planets_settings'); + register_hook('plugin_settings_post', 'addon/planets/planets.php', 'planets_settings_post'); + + logger("installed planets"); +} + + +function planets_uninstall() { + + /** + * + * uninstall unregisters any hooks created with register_hook + * during install. It may also delete configuration settings + * and any other cleanup. + * + */ + + unregister_hook('post_local', 'addon/planets/planets.php', 'planets_post_hook'); + unregister_hook('plugin_settings', 'addon/planets/planets.php', 'planets_settings'); + unregister_hook('plugin_settings_post', 'addon/planets/planets.php', 'planets_settings_post'); + + + logger("removed planets"); +} + + + +function planets_post_hook($a, &$item) { + + /** + * + * An item was posted on the local system. + * We are going to look for specific items: + * - A status post by a profile owner + * - The profile owner must have allowed our plugin + * + */ + + logger('planets invoked'); + + if(! local_user()) /* non-zero if this is a logged in user of this system */ + return; + + if(local_user() != $item['uid']) /* Does this person own the post? */ + return; + + if($item['parent']) /* If the item has a parent, this is a comment or something else, not a status post. */ + return; + + /* Retrieve our personal config setting */ + + $active = get_pconfig(local_user(), 'planets', 'enable'); + + if(! $active) + return; + + /** + * + * OK, we're allowed to do our stuff. + * Here's what we are going to do: + * load the list of timezone names, and use that to generate a list of world planets. + * Then we'll pick one of those at random and put it in the "location" field for the post. + * + */ + + $planets = array('Alderaan','Tatooine','Dagoba','Polis Massa','Coruscant','Hoth','Endor','Kamino','Rattatak','Mustafar','Iego','Geonosis','Felucia','Dantooine','Ansion','Artaru','Bespin','Boz Pity','Cato Neimoidia','Christophsis','Kashyyk','Kessel','Malastare','Mygeeto','Nar Shaddaa','Ord Mantell','Saleucami','Subterrel','Death Star','Teth','Tund','Utapau','Yavin'); +# $zones = timezone_identifiers_list(); +# foreach($zones as $zone) { +# if((strpos($zone,'/')) && (! stristr($zone,'US/')) && (! stristr($zone,'Etc/'))) +# $planets[] = str_replace('_', ' ',substr($zone,strpos($zone,'/') + 1)); +# } +# +# if(! count($planets)) +# return; + $planet = array_rand($planets,1); + $item['location'] = $planets[$planet]; + + return; +} + + + + +/** + * + * 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 planets_settings_post($a,$post) { + if(! local_user()) + return; + if($_POST['planets-submit']) + set_pconfig(local_user(),'planets','enable',intval($_POST['planets'])); +} + + +/** + * + * Called from the Plugin Setting form. + * Add our own settings info to the page. + * + */ + + + +function planets_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(),'planets','enable'); + + $checked = (($enabled) ? ' checked="checked" ' : ''); + + /* Add some HTML to the existing form */ + + $s .= '
'; + $s .= '

' . t('Planets Settings') . '

'; + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + /* provide a submit button */ + + $s .= '
'; + +} From 0efaade0cfc382a24ff611da0679c24ce61a299d Mon Sep 17 00:00:00 2001 From: tony baldwin Date: Tue, 10 Apr 2012 08:55:54 -0400 Subject: [PATCH 3/6] minor correction --- planets/planets.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/planets/planets.php b/planets/planets.php index 62ba675b..190b1902 100755 --- a/planets/planets.php +++ b/planets/planets.php @@ -1,9 +1,10 @@ + * Author: Darth Baldwin * * * From 9bcfb4fd6d7b41117160d88b30321850e93530c3 Mon Sep 17 00:00:00 2001 From: tony baldwin Date: Tue, 10 Apr 2012 08:59:12 -0400 Subject: [PATCH 4/6] Do not meddle in Imperial affairs. This correction is none of your concern. --- planets/planets.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/planets/planets.php b/planets/planets.php index 190b1902..1c6ed43b 100755 --- a/planets/planets.php +++ b/planets/planets.php @@ -4,7 +4,7 @@ * Description: Sample Friendica plugin/addon. Set a random planet from the Emprire when posting. * Version: 1.0 * Author: Mike Macgirvin - * Author: Darth Baldwin + * Author: Darth Baldwin * * * From 1043451390deab7e304fa60ff581ac98f5bbc3cf Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 10 Apr 2012 06:16:39 -0700 Subject: [PATCH 5/6] please use make --- planets.tar.gz | Bin 10240 -> 0 bytes planets.tgz | Bin 0 -> 2346 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 planets.tar.gz create mode 100644 planets.tgz diff --git a/planets.tar.gz b/planets.tar.gz deleted file mode 100644 index 30f81dece54bf60586b90d7cc3038cbe47c44d0b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10240 zcmeHLYfl?V7Ue7aiaQ=FZL-G3KoW@oA|}a9qD&qNnH{Z|$SQZ2-Mw^owW_KiWR?Fu z=hnm6Jm!(jd|0g!(2uG*b)VZTO6v}U;WH~wtn=h1@)YkbAe^{aa~8a>(@ZSU;u zKEn8Dw6il>qX&PZOmpbgSfPp5v{H8d@|K%F8oy=9|H7*#_&;0+P2PNUvDv|Q`+qcg z_;7D++5fwHqun*y{_2w40{DOK|AWWy_{Q-5{SCTLuSF&I>7A%ERS_a0mHhUpG^s8c zTc~=UPDIs|l77&Itg|8&nAXmUdML6?)dM<_mIUbq1iHv&O^q_PsAmJl`=`{#VT}gc z{CwQnTk9hUMp95n#3<)hs z%UNNp)H0)s!scXiN#+u7Dgr#7c>W-_sj8>Nj3b{Inq}mXuGl*AL#K&fmV7u(oSw-C zI;6yFKI;4HPG8z|kbDPR;E^F{Y6<)QI^KN@IbtG4M&WN8q`#l zy-k|7b;=lhDpe`~zzTR#hCJ2%V+E2vuZG2;e!?ROZ_A4F1F5OI_rBtpFBV?#Of4&Q z4*01?0Pr$zfHtU5!k%7sUL0(BQIsXI67zk=ZGBVrVAkQr#zs_!LyU{hf~No3*jVRa zTnE1U_ome_Tctvr!IRiXSS!-pdr?d2L)8r2g7=VmT4-ZgpMN8}snLbfWEB~!G=dNT z%4RHGP`X9D5Q448h#BWfo%Iq9+OeCO^rN|N;Y%Kjnz$vrI@$d0N|h*BO&2m*lpjK| zmA&K1NXtoLs1Y;SCnOPx()cM3;%WjUBi@GGu&@Az4{A!aM0~iVZIj{Ft!s_cFoT>T zF6vZzOWmck%ja?2>Q8GvUjW5#7;+hN%vSo#z7LHqA!We^_!r}F8a&f;duW;)c@A;8|%^Yk*Kcu{U)`{ z6SCJ8eY)2zK>wR`Jp_(H&s-NS1d1+-fVy}!(^oJ~BqQ+SxjK`Xr=nuo`^IZCW;*C?ZbGslN{yp;93CA#4i&h zGR&13#~rS4U?5OFc3Ve|+g8`ia)5Sb3c&QuAvrsrCT)==A9y3)>8X-jivZK01Au*@ zx~D%_{4uL=4K#o>Fn4V|4q!sfa{kKUFPPFz;KCHeN2gF>4Y5~LB{2YB$C2KJ$<$_BB zz~++jp#-|Hc=NK)Wdk7>y^o;FloQR^b~^Q8`5fGy7}S1W43C^R3?+5gRL8Q>14|ozQA1KmjPUgG_Zz zi@Jl}8AKCx(ofzCtB{Qnw@<}P zO$2VXmbwy>ADeF918wJa)C zWDepMExvCj=zz84_fOFp5`lg*+A>(dY0Qv`wHog3xfykha zB2(4YwinUEZjtNat}zV99NP2A{Sg-LM-r-;-*Su2YF7hy_B_sfIp$&(RRq6H(YA-?9?krfS$@Yby?Zdqy{_@?i3`TNY{G{m ziaQ&7SxS?G85Xx>*M&oY^E+3vxqPl?sf$#`BDQtJXO7b(w^f--fvQad9B~iIqCUf^ zusrNs?b0E#myJB^SozToQ)4=m<7{!*Noe3s&0Gm5!pK(h;dMZX|2i-X93HO&EafFh zhbjp=JnX>c9U30-%g(R**Sf=L0!@Ep)le4F7F33^&ehwM7*;A&<#VA6F0DZ$@9_+Y zdS_j}86SuOi#P4b$>nXA;{>-ueS`3`3JR^BxR&#=-)| zEwaN-F!+{NV(UVS2CdgJcqt~bylu7{Kw(z;3drd_Q6B*TA3>mJuAQMMm(P+Yl|xt( ztf*ZBuprtTF~ro>Gk>v|@7y8eZHwm-+Z!YLH7eMCj@zdv~q@x3`lg|i0+Hqf7=CTL2>fCU3oE=mP zCOz@o<~+;U;03=D|MSKzUopS<)h#*s#aMSO{Qd90+uNgukK*^=-R->*zW?v;ZSSnU z|K4TKulXKD@7rrM;TZvCd5ZIb-KSDcEfVaa$ZWn(JKNjMM?6+Sl?7H7SXp3Yft3YT7FbzeWr39i{)7d716~Na AzyJUM diff --git a/planets.tgz b/planets.tgz new file mode 100644 index 0000000000000000000000000000000000000000..1be40b9d8be114549222bf0cbb2a0273a76cd9bd GIT binary patch literal 2346 zcmV+_3Dx!=iwFQ_GK5b61MOJ*ZxcBl@2~A&@!f32q+FUbg#v16IbORU4yb7NR;MnC zoEazab!I%WJuLJCASqzkl!kHUHne*WX>Eo$oHmlJ$S?|Ba1}AEWQL zWhsWa+|I>N=JaV}eUxkA_9>Smcd)U3sWLa&r`?^M>H}U2VaBT59%|=wf$crs{X9o4 zoyhcjs6X7G1fY%ow%V%|*Y*6bCe?T6@%8-g@8a)9{_pfx`Ts|(hmYX#jo$6s8+4oA zh(hkuJ5gr3pkp5q9eQ3=$|#Z3U!}21mkjt!+SI7Z;dP%*L{a6EelkjynMws!d5zN0 z6IrIqE}ck6f=nP9!i+`+&u$`_xKT#Z>5mCIfM;G=o$XTrD%JrQ|!$;cVMUWiPZKW9?7Nta{6 zBh3AKd{)JhfTTu_m37j{j4l<3u@?3UI|YFx-Wa|+aj7mxYRvgWEK4_1+7#PI;pi+0 zXvzDt#G5L4PluEQ166;)|rP+G+Qyo?3|{bHa6Bd z#MjxQ{PDInFk7LcaRN8toJc3Zi$=2HL@I69Bb-8rkuuh?K7U8eAjGXU=5#hL~a9!Couy68)7!(kA(wa_@JcJAUmW-t*Z==98}u#Gm2MPxxUkDk>&s3MIny>wKFtKhjz=1BQ#S=1=xvAvVQO2f&9(p-wN zt`__=6KYvlV*MMDxrFHVaQnBY{-=(gdA=!B*Zh9d@l&gQ{j z2)PBy+P8>UDMG0W1?E@jyUSR!*O9)TsSK&}P8p zpuM#PZauUbU2cDrMw8-RfSQRvE|4JQ+l;RrI-bRn4{qzoaaWr%lAb3_KOB;`^I1}> zEP2n2nA0;YZ6H%2!C+r#7s?-u@@NUsNThjhp-pHs2J8Hvk^eSh_(KKo-m~ zi)aq+aC4h;NhGj!O@vu&zJ1lFagN8=eAO5UK7J|3 zeE74}rM3z#On#Diohsp(l~cx#OCEyx!C*42@$f|2O7YGU{gIB9yJ9&YDZP=Z&?@sJ zo=yzxs;fz${Yu!$)fJ2IN?I#(mPO=(hh1j!`f4ntV|m`-CUi1E85K156r zCnA@13bpvT9-Pw5#C&UE6uUZ>Jq;j}I@eEs4?C0OXc2~6f3oj=n0CPxNayor*5 z%8*njaY%>($3r^+!fO)qOgkbVC;bzbS)6j1w=o67rvajq^b%B`Tek?|j{_c&o0DHo zzI^uFrF^*MiB2QpjAwB`4UF_-U^^Lbo>9`V^>BuLLjd{{^|yljpYg%pJ|9zEm#*DV zkKCHfY`8XIIN;Ep0(bh{1Y^}|LfhXJrozUD_XmFP3PgS5iWfVctDhpzhXQ#tox&IA zzWIq7lz9tf#|caz9(r?d{PyHD2QGoCe?7Z?kbmdg32(@l3f=s1>Wx-vXRfvETu|i)5Nxq80RdR zxFVlOfv!zmTyY=fsyxTcn;*7jTv|l#s*;B-CqKAeYHf>f3mYA_66*R}Gk3zFu(CEh zZg(l^EuZ&*$|y;T3W;)f*n-Vl)H~wM)^FywvK2M`nN{Q4Xl=OD`|j;q%q%Vu#zwJ| zqej8w+1L8=&G_(LdDH(K>QUS6hRzl}LQRP$hpqU~!rne5&0WuXgy#)(=LC^?vcP40M;xOQ?JyWq)m>Sp^r>@mc_B3%VB zul-znX+(uIT_hfULtX;y4_Yks?5O#rxYY>s+{02MSICk^Do;NbL0JH?GaR2}S literal 0 HcmV?d00001 From 9295f179b1da34ef6a00019a1fe8870373aefa49 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 10 Apr 2012 16:03:22 -0700 Subject: [PATCH 6/6] slight change to get_avatar hook, also provided readable text for gravatar default options - the admin settings part of this plugin needs some work. --- gravatar/gravatar.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/gravatar/gravatar.php b/gravatar/gravatar.php index 4464cd2c..b9435a31 100644 --- a/gravatar/gravatar.php +++ b/gravatar/gravatar.php @@ -36,7 +36,7 @@ function gravatar_lookup($a, &$b) { // setting default value if nothing configured if(! $default_avatar) - $default_avatar = 'identicon'; // pseudo-random geometric pattern based on email hash + $default_avatar = 'identicon'; // default image will be a random pattern if(! $rating) $rating = 'g'; // suitable for display on all websites with any audience type @@ -47,7 +47,8 @@ function gravatar_lookup($a, &$b) { if ($default_avatar != "gravatar") $url .= '&d=' .$default_avatar; - $b['url'] = $url; + $b['url'] = $url; + $b['success'] = true; } /** @@ -67,12 +68,11 @@ function gravatar_plugin_admin (&$a, &$o) { // Available options for the select boxes $default_avatars = array( - 'gravatar' => 'Gravatar', - 'mm' => 'MM', - 'identicon' => 'Identicon', - 'monsterid' => 'Monsterid', - 'wavatar' => 'Wavatar', - 'retro' => 'Retro' + 'mm' => t('generic profile image'), + 'identicon' => t('random geometric pattern'), + 'monsterid' => t('monster face'), + 'wavatar' => t('computer generated face'), + 'retro' => t('retro arcade style face'), ); $ratings = array( 'g' => 'g',