Merge branch 'dev' of /home/macgirvin/osada into dev

This commit is contained in:
zotlabs 2018-12-30 21:37:40 -08:00
commit ec8b3d21e9
6 changed files with 52 additions and 40 deletions

View file

@ -796,7 +796,7 @@ class Apps {
); );
if($r) { if($r) {
$hookinfo = Array('uid'=>$uid,'deleted'=>$deleted,'cats'=>$cats,'apps'=>$r); $hookinfo = [ 'uid' => $uid, 'deleted' => $deleted, 'cats' => $cats, 'apps' => $r ];
call_hooks('app_list',$hookinfo); call_hooks('app_list',$hookinfo);
$r = $hookinfo['apps']; $r = $hookinfo['apps'];
for($x = 0; $x < count($r); $x ++) { for($x = 0; $x < count($r); $x ++) {

View file

@ -655,25 +655,14 @@ class Connedit extends \Zotlabs\Web\Controller {
]; ];
$labels = [ $labels = [
t('Me'), 0 => t('Me'),
t('Family'), 20 => t('Family'),
t('Friends'), 40 => t('Friends'),
t('Acquaintances'), 60 => t('Peers'),
t('All') 80 => t('Connections'),
99 => t('All')
]; ];
call_hooks('affinity_labels',$labels); call_hooks('affinity_labels',$labels);
$label_str = '';
if($labels) {
foreach($labels as $l) {
if($label_str) {
$label_str .= ", '|'";
$label_str .= ", '" . $l . "'";
}
else
$label_str .= "'" . $l . "'";
}
}
$slider_tpl = get_markup_template('contact_slider.tpl'); $slider_tpl = get_markup_template('contact_slider.tpl');
@ -682,7 +671,7 @@ class Connedit extends \Zotlabs\Web\Controller {
$slide = replace_macros($slider_tpl,array( $slide = replace_macros($slider_tpl,array(
'$min' => 1, '$min' => 1,
'$val' => $slideval, '$val' => $slideval,
'$labels' => $label_str, '$labels' => $labels,
)); ));
} }

View file

@ -111,6 +111,10 @@ h6, .h6 {
font-family: sans-serif, arial, freesans; font-family: sans-serif, arial, freesans;
} }
#contact-range {
width: 80%;
}
abbr { abbr {
border-bottom: none; border-bottom: none;
} }

View file

@ -111,8 +111,21 @@
<div class="section-content-tools-wrapper"> <div class="section-content-tools-wrapper">
{{if $slide}} {{if $slide}}
<div class="form-group"><strong>{{$lbl_slider}}</strong></div> <div class="form-group"><strong>{{$lbl_slider}}</strong></div>
<div id="contact-slider" class="slider form-group">
{{$slide}} {{$slide}}
<input id="contact-closeness-mirror" type="hidden" name="closeness" value="{{$close}}" /> <div id="slider-container">
<i class="fa fa-fw fa-user range-icon"></i>
<input id="contact-range" title="{{$close}}" type="range" min="0" max="99" name="closeness" value="{{$close}}" list="affinity_labels" >
<datalist id="affinity_labels">
{{foreach $labels as $k => $v}}
<option value={{$k}} label="{{$v}}">
{{/foreach}}
</datalist>
<i class="fa fa-fw fa-users range-icon"></i>
<span class="range-value">{{$close}}</span>
</div>
</div>
</div>
{{/if}} {{/if}}
{{if $multiprofs}} {{if $multiprofs}}

View file

@ -1,20 +1,12 @@
<div id="contact-slider" class="slider form-group"><input id="contact-range" type="text" name="fake-closeness" value="{{$val}}" /></div>
<script> <script>
$(document).ready(function() { $(document).ready(function() {
// The slider does not render correct if width is given in % and
// the slider container is hidden (display: none) during rendering.
// So let's unhide it to render and hide again afterwards.
if(!$("#affinity-tool-collapse").hasClass("show")) {
$("#affinity-tool-collapse").addClass("show");
makeContactSlider();
$("#affinity-tool-collapse").removeClass("show");
}
else {
makeContactSlider();
}
});
function makeContactSlider() { $("#contact-range").on('input', function() { csliderUpdate(); });
$("#contact-range").jRange({ from: {{$min|default:'0'}}, to: 99, step: 1, scale: [{{$labels}}], width:'98%', showLabels: false, onstatechange: function(v) { $("#contact-closeness-mirror").val(v); } }); $("#contact-range").on('change', function() { csliderUpdate(); });
function csliderUpdate() {
$(".range-value").html($("#contact-range").val());
} }
});
</script> </script>

View file

@ -8,6 +8,7 @@
{{/foreach}} {{/foreach}}
</datalist> </datalist>
<i class="fa fa-fw fa-users range-icon"></i> <i class="fa fa-fw fa-users range-icon"></i>
<span class="range-value">{{$cmax}}</span>
</div> </div>
<div id="profile-jot-text-loading" class="spinner-wrapper"> <div id="profile-jot-text-loading" class="spinner-wrapper">
<div class="spinner m"></div> <div class="spinner m"></div>
@ -18,14 +19,27 @@
$(document).ready(function() { $(document).ready(function() {
var old_cmin = 0; var old_cmin = 0;
var old_cmax = 99; var old_cmax = {{$cmax}};
var slideTimer = null; var slideTimer = null;
$("#main-range").change(function() { $("#main-range").on('input', function() { sliderUpdate(); });
$("#main-range").on('change', function() { sliderUpdate(); });
function sliderUpdate() {
bParam_cmax = $("#main-range").val(); bParam_cmax = $("#main-range").val();
if(bParam_cmax == old_cmax)
return;
old_cmax = bParam_cmax;
$("#main-range").attr('title',bParam_cmax); $("#main-range").attr('title',bParam_cmax);
$(".range-value").html(bParam_cmax);
networkRefresh(); networkRefresh();
}); }
// "de-bounce" circuit
// when a change occurs, indicate "busy", but wait (2 seconds)
// before loading fresh content. This allows the slider value to
// change further during that time and avoids a network fetch for
// every individual integer value change.
function networkRefresh() { function networkRefresh() {
if(slideTimer !== null) if(slideTimer !== null)