diff options
Diffstat (limited to 'include/widgets.php')
-rw-r--r-- | include/widgets.php | 44 |
1 files changed, 43 insertions, 1 deletions
diff --git a/include/widgets.php b/include/widgets.php index f152e8ee1..632f85436 100644 --- a/include/widgets.php +++ b/include/widgets.php @@ -1,5 +1,18 @@ <?php /** @file */ +function list_widgets() { + $widgets = array( + 'profile' => t('Displays a full channel profile'), + 'tagcloud' => t('Tag cloud of webpage categories'), + 'collections' => t('List and filter by collection'), + 'suggestions' => t('Show a couple of channel suggestion'), + 'follow' => t('Provide a channel follow form') + ); + $arr = array('widgets' => $widgets); + call_hooks('list_widgets',$arr); + return $arr['widgets']; +} + function widget_profile($args) { $a = get_app(); @@ -92,4 +105,33 @@ function widget_suggestions($arr) { return $o; -}
\ No newline at end of file +} + + +function widget_follow($args) { + if(! local_user()) + return ''; + $a = get_app(); + $uid =$a->channel['channel_id']; + $r = q("select count(*) as total from abook where abook_channel = %d and not (abook_flags & %d) ", + intval($uid), + intval(ABOOK_FLAG_SELF) + ); + if($r) + $total_channels = $r[0]['total']; + $limit = service_class_fetch($uid,'total_channels'); + if($limit !== false) { + $abook_usage_message = sprintf( t("You have %1$.0f of %2$.0f allowed connections."), $total_channels, $limit); + } + else { + $abook_usage_message = ''; + } + return replace_macros(get_markup_template('follow.tpl'),array( + '$connect' => t('Add New Connection'), + '$desc' => t('Enter the channel address'), + '$hint' => t('Example: bob@example.com, http://example.com/barbara'), + '$follow' => t('Connect'), + '$abook_usage_message' => $abook_usage_message + )); + +} |