2009-04-18 20:08:33 +01:00
< ? php
/**
2009-08-25 23:12:20 +01:00
* StatusNet , the distributed open - source microblogging tool
2009-04-18 20:08:33 +01:00
*
* Personal tag cloud section
*
* PHP version 5
*
* LICENCE : This program is free software : you can redistribute it and / or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation , either version 3 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU Affero General Public License for more details .
*
* You should have received a copy of the GNU Affero General Public License
* along with this program . If not , see < http :// www . gnu . org / licenses />.
*
* @ category Widget
2009-08-25 23:12:20 +01:00
* @ package StatusNet
2009-08-25 23:19:04 +01:00
* @ author Evan Prodromou < evan @ status . net >
2009-08-25 23:12:20 +01:00
* @ copyright 2009 StatusNet , Inc .
2009-04-18 20:08:33 +01:00
* @ license http :// www . fsf . org / licensing / licenses / agpl - 3.0 . html GNU Affero General Public License version 3.0
2009-08-25 23:16:46 +01:00
* @ link http :// status . net /
2009-04-18 20:08:33 +01:00
*/
2009-08-26 15:41:36 +01:00
if ( ! defined ( 'STATUSNET' ) && ! defined ( 'LACONICA' )) {
2009-04-18 20:08:33 +01:00
exit ( 1 );
}
/**
* Personal tag cloud section
*
* @ category Widget
2009-08-25 23:12:20 +01:00
* @ package StatusNet
2009-08-25 23:19:04 +01:00
* @ author Evan Prodromou < evan @ status . net >
2009-04-18 20:08:33 +01:00
* @ license http :// www . fsf . org / licensing / licenses / agpl - 3.0 . html GNU Affero General Public License version 3.0
2009-08-25 23:16:46 +01:00
* @ link http :// status . net /
2009-04-18 20:08:33 +01:00
*/
class SubscribersPeopleTagCloudSection extends SubPeopleTagCloudSection
{
function title ()
{
2011-04-03 13:24:55 +01:00
// TRANS: Title of personal tag cloud section.
2009-04-18 20:08:33 +01:00
return _ ( 'People Tagcloud as tagged' );
}
function tagUrl ( $tag ) {
$nickname = $this -> out -> profile -> nickname ;
return common_local_url ( 'subscribers' , array ( 'nickname' => $nickname , 'tag' => $tag ));
}
function query () {
2009-04-24 21:01:03 +01:00
// return 'select tag, count(tag) as weight from subscription left join profile_tag on subscriber=tagged and subscribed=tagger where subscribed=%d and subscriber != subscribed group by tag order by weight desc';
2011-03-06 19:09:24 +00:00
return 'select profile_tag.tag, count(profile_tag.tag) as weight from subscription left join (profile_tag, profile_list) on subscriber=profile_tag.tagged and subscribed=profile_tag.tagger and profile_tag.tagger = profile_list.tagger and profile_tag.tag = profile_list.tag where subscribed=%d and subscriber != subscribed and profile_list.private = false and profile_tag.tag is not null group by profile_tag.tag order by weight desc' ;
2009-04-18 20:08:33 +01:00
}
}