From c3ada095f4156bba01e77d2d250d5821ba5e859e Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 5 Jan 2012 20:40:48 -0800 Subject: [PATCH] network select widget --- include/contact_widgets.php | 33 +++++++++++++++++++++++++++++++ mod/network.php | 3 +++ view/nets.tpl | 10 ++++++++++ view/theme/duepuntozero/style.css | 17 +++++++++++++++- view/theme/loozah/style.css | 17 +++++++++++++++- view/theme/testbubble/style.css | 19 +++++++++++++++++- 6 files changed, 96 insertions(+), 3 deletions(-) create mode 100644 view/nets.tpl diff --git a/include/contact_widgets.php b/include/contact_widgets.php index 3a21ff2c6f..424f2997ef 100644 --- a/include/contact_widgets.php +++ b/include/contact_widgets.php @@ -40,3 +40,36 @@ function findpeople_widget() { } +function networks_widget($baseurl,$selected = '') { + + $a = get_app(); + + if(! local_user()) + return ''; + + + $r = q("select distinct(network) from contact where uid = %d", + intval(local_user()) + ); + + $nets = array(); + if(count($r)) { + require_once('include/contact_selectors.php'); + foreach($r as $rr) { + if($rr['network']) + $nets[] = array('ref' => $rr['network'], 'name' => network_to_name($rr['network']), 'selected' => (($selected == $rr['network']) ? 'selected' : '' )); + } + } + + return replace_macros(get_markup_template('nets.tpl'),array( + '$title' => t('Networks'), + '$desc' => '', + '$sel_all' => (($selected == '') ? 'selected' : ''), + '$all' => t('All Networks'), + '$nets' => $nets, + '$base' => $baseurl, + + )); +} + + diff --git a/mod/network.php b/mod/network.php index 76c7bb5e69..9318d20ca0 100644 --- a/mod/network.php +++ b/mod/network.php @@ -10,6 +10,8 @@ function network_init(&$a) { $group_id = (($a->argc > 1 && intval($a->argv[1])) ? intval($a->argv[1]) : 0); require_once('include/group.php'); + require_once('include/contact_widgets.php'); + if(! x($a->page,'aside')) $a->page['aside'] = ''; @@ -42,6 +44,7 @@ function network_init(&$a) { } $a->page['aside'] .= group_side('network','network',true,$group_id); + $a->page['aside'] .= networks_widget($a->get_baseurl() . '/network',(($_GET['nets']) ? $_GET['nets'] : '')); $a->page['aside'] .= saved_searches($search); } diff --git a/view/nets.tpl b/view/nets.tpl new file mode 100644 index 0000000000..b0cb8890c5 --- /dev/null +++ b/view/nets.tpl @@ -0,0 +1,10 @@ +
+

$title

+
$desc
+ $all + +
diff --git a/view/theme/duepuntozero/style.css b/view/theme/duepuntozero/style.css index 6ce4c52c05..6fa968da36 100644 --- a/view/theme/duepuntozero/style.css +++ b/view/theme/duepuntozero/style.css @@ -300,7 +300,7 @@ div.wall-item-content-wrapper.shiny { margin-bottom: 10px; } -.group-selected { +.group-selected, .nets-selected { padding: 3px; -moz-border-radius: 3px; border-radius: 3px; @@ -1836,6 +1836,21 @@ a.mail-list-link { margin-top: 10px; } +.nets-ul { + list-style-type: none; +} + +.nets-ul li { + margin-top: 10px; +} + +.nets-link { + margin-left: 24px; +} +.nets-all { + margin-left: 42px; +} + #search-save { margin-left: 5px; } diff --git a/view/theme/loozah/style.css b/view/theme/loozah/style.css index 6b8aef500b..ff31a78074 100644 --- a/view/theme/loozah/style.css +++ b/view/theme/loozah/style.css @@ -164,7 +164,7 @@ blockquote:before { margin-bottom: 10px; } -.group-selected { +.group-selected, .nets-selected { padding: 3px; border: 1px solid #CCCCCC; background: #F8F8F8; @@ -1901,6 +1901,21 @@ a.mail-list-link { width: 12px; } +.nets-ul { + list-style-type: none; +} + +.nets-ul li { + margin-top: 10px; +} + +.nets-link { + margin-left: 24px; +} +.nets-all { + margin-left: 42px; +} + #search-save { margin-left: 5px; } diff --git a/view/theme/testbubble/style.css b/view/theme/testbubble/style.css index 3a5d9f1788..54bbdeb980 100644 --- a/view/theme/testbubble/style.css +++ b/view/theme/testbubble/style.css @@ -630,7 +630,7 @@ h3#search:before { top:1px; } -.group-selected { +.group-selected, .nets-selected { padding-bottom: 0px; padding-left: 2px; padding-right: 2px; @@ -668,6 +668,23 @@ ul .sidebar-group-li .icon{ width: 12px; } + +.nets-ul { + list-style-type: none; +} + +.nets-ul li { + margin-top: 10px; +} + +.nets-link { + margin-left: 24px; +} +.nets-all { + margin-left: 42px; +} + + .widget h3{ background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #f0edf0), color-stop(1, #e2e2e2) ); background:-moz-linear-gradient( center top, #f0edf0 5%, #e2e2e2 100% );