1
0
Fork 0

network select widget

This commit is contained in:
friendica 2012-01-05 20:40:48 -08:00
parent 291a82c4a4
commit c3ada095f4
6 changed files with 96 additions and 3 deletions

View file

@ -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,
));
}

View file

@ -10,6 +10,8 @@ function network_init(&$a) {
$group_id = (($a->argc > 1 && intval($a->argv[1])) ? intval($a->argv[1]) : 0); $group_id = (($a->argc > 1 && intval($a->argv[1])) ? intval($a->argv[1]) : 0);
require_once('include/group.php'); require_once('include/group.php');
require_once('include/contact_widgets.php');
if(! x($a->page,'aside')) if(! x($a->page,'aside'))
$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'] .= 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); $a->page['aside'] .= saved_searches($search);
} }

10
view/nets.tpl Normal file
View file

@ -0,0 +1,10 @@
<div id="nets-sidebar" class="widget">
<h3>$title</h3>
<div id="nets-desc">$desc</div>
<a href="$base" class="nets-link{{ if $sel_all }} nets-selected{{ endif }} nets-all">$all</a>
<ul class="nets-ul">
{{ for $nets as $net }}
<li><a href="$base?nets=$net.ref" class="nets-link{{ if $net.selected }} nets-selected{{ endif }}">$net.name</a></li>
{{ endfor }}
</ul>
</div>

View file

@ -300,7 +300,7 @@ div.wall-item-content-wrapper.shiny {
margin-bottom: 10px; margin-bottom: 10px;
} }
.group-selected { .group-selected, .nets-selected {
padding: 3px; padding: 3px;
-moz-border-radius: 3px; -moz-border-radius: 3px;
border-radius: 3px; border-radius: 3px;
@ -1836,6 +1836,21 @@ a.mail-list-link {
margin-top: 10px; 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 { #search-save {
margin-left: 5px; margin-left: 5px;
} }

View file

@ -164,7 +164,7 @@ blockquote:before {
margin-bottom: 10px; margin-bottom: 10px;
} }
.group-selected { .group-selected, .nets-selected {
padding: 3px; padding: 3px;
border: 1px solid #CCCCCC; border: 1px solid #CCCCCC;
background: #F8F8F8; background: #F8F8F8;
@ -1901,6 +1901,21 @@ a.mail-list-link {
width: 12px; 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 { #search-save {
margin-left: 5px; margin-left: 5px;
} }

View file

@ -630,7 +630,7 @@ h3#search:before {
top:1px; top:1px;
} }
.group-selected { .group-selected, .nets-selected {
padding-bottom: 0px; padding-bottom: 0px;
padding-left: 2px; padding-left: 2px;
padding-right: 2px; padding-right: 2px;
@ -668,6 +668,23 @@ ul .sidebar-group-li .icon{
width: 12px; 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{ .widget h3{
background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #f0edf0), color-stop(1, #e2e2e2) ); 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% ); background:-moz-linear-gradient( center top, #f0edf0 5%, #e2e2e2 100% );