Merge pull request #7044 from MrPetovan/task/router

Move mod/admin to src/Module/Admin
This commit is contained in:
Philipp 2019-05-02 18:26:30 +02:00 committed by GitHub
commit 774d04cd2f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
97 changed files with 3031 additions and 3894 deletions

View file

@ -70,7 +70,6 @@ function clean_form(App $a, &$colorset, $user)
$t = Renderer::getMarkupTemplate("theme_settings.tpl");
$o = Renderer::replaceMacros($t, [
'$submit' => L10n::t('Submit'),
'$baseurl' => System::baseUrl(),
'$title' => L10n::t("Theme settings"),
'$colorset' => ['duepuntozero_colorset', L10n::t('Variations'), $color, '', $colorset],
]);

View file

@ -3507,6 +3507,7 @@ div.jGrowl div.info {
width: 100%;
padding: 0.5em;
height: auto;
box-sizing: border-box;
}
aside:before {
content: ">>";

View file

@ -30,7 +30,7 @@ function theme_post(App $a)
function theme_admin_post(App $a)
{
if (!local_user()) {
if (!is_site_admin()) {
return;
}
@ -119,7 +119,6 @@ function frio_form($arr)
$t = Renderer::getMarkupTemplate('theme_settings.tpl');
$ctx = [
'$submit' => L10n::t('Submit'),
'$baseurl' => System::baseUrl(),
'$title' => L10n::t('Theme settings'),
'$scheme' => ['frio_scheme', L10n::t('Select color scheme'), $arr['scheme'], '', $scheme_choices],
'$share_string' => ['frio_share_string', L10n::t('Copy or paste schemestring'), $arr['share_string'], L10n::t('You can copy this string to share your theme with others. Pasting here applies the schemestring'), false, false],

View file

@ -33,6 +33,10 @@ body {
/*color: #555;*/
font-family: 'Open Sans',sans-serif;
}
body.minimal {
padding: 15px;
}
body a {
/*color: #555;*/
/*color: #6fdbe8;*/
@ -131,14 +135,6 @@ blockquote {
* standard page elements
*/
section.minimal {
top: 0px;
left: 0px;
position: absolute;
width: 100%;
height: 100%;
}
#back-to-top {
display: none;
cursor: pointer;
@ -3240,53 +3236,6 @@ main .nav-tabs>li.active>a:hover {
* Framework overwrite
*/
/* jRange */
.theme-frio .back-bar {
height: 5px !important;
border-radius: 2px;
background-color: #eeeeee;
background-color: #e7e7e7;
background-image: -moz-linear-gradient(top, #eeeeee, #dddddd);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#eeeeee), to(#dddddd));
background-image: -webkit-linear-gradient(top, #eeeeee, #dddddd);
background-image: -o-linear-gradient(top, #eeeeee, #dddddd);
background-image: linear-gradient(to bottom, #eeeeee, #dddddd);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffeeeeee', endColorstr='#ffdddddd', GradientType=0);
}
.theme-frio .back-bar .selected-bar {
border-radius: 2px;
background-color: $link_color;
/* background-image: -moz-linear-gradient(top, #bdfade, #76fabc);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#bdfade), to(#76fabc));
background-image: -webkit-linear-gradient(top, #bdfade, #76fabc);
background-image: -o-linear-gradient(top, #bdfade, #76fabc);
background-image: linear-gradient(to bottom, #bdfade, #76fabc);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffbdfade', endColorstr='#ff76fabc', GradientType=0);*/
}
.theme-frio .back-bar .pointer {
width: 14px !important;
height: 14px !important;
top: -5px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-radius: 10px;
border: 1px solid #AAA;
background-color: #e7e7e7 !important;
background-image: -moz-linear-gradient(top, #eeeeee, #dddddd);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#eeeeee), to(#dddddd));
background-image: -webkit-linear-gradient(top, #eeeeee, #dddddd);
background-image: -o-linear-gradient(top, #eeeeee, #dddddd);
background-image: linear-gradient(to bottom, #eeeeee, #dddddd);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffeeeeee', endColorstr='#ffdddddd', GradientType=0);
}
.theme-frio .back-bar .pointer-label {
color: #999;
}
/* textcomplete for contact filtering*/
#contact-list ul.dropdown-menu.textcomplete-dropdown.media-list {
position: relative !important;
@ -3553,8 +3502,11 @@ section .profile-match-wrapper {
body {
padding-top: 95px;
}
body.minimal {
padding: 15px;
}
#friendica-logo-mask {
#friendica-logo-mask {
display: none;
}

View file

@ -1,21 +0,0 @@
The MIT License (MIT)
Copyright (c) 2014 Nitin Hayaran
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View file

@ -1,5 +0,0 @@
## jQuery plugin to create Range Selector
![jRange Preview](http://i.imgur.com/da8uZwx.png)
[Demo and Documentation](http://nitinhayaran.github.io/jRange/demo/)

File diff suppressed because one or more lines are too long

View file

@ -1,173 +0,0 @@
.slider-container {
width: 300px;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.slider-container .back-bar {
height: 10px;
position: relative;
}
.slider-container .back-bar .selected-bar {
position: absolute;
height: 100%;
}
.slider-container .back-bar .pointer {
position: absolute;
width: 10px;
height: 10px;
background-color: red;
cursor: col-resize;
opacity: 1;
z-index: 2;
}
.slider-container .back-bar .pointer.last-active {
z-index: 3;
}
.slider-container .back-bar .pointer-label {
position: absolute;
top: -17px;
font-size: 8px;
background: white;
white-space: nowrap;
line-height: 1;
}
.slider-container .back-bar .focused {
z-index: 10;
}
.slider-container .clickable-dummy {
cursor: pointer;
position: absolute;
width: 100%;
height: 100%;
z-index: 1;
}
.slider-container .scale {
top: 2px;
position: relative;
}
.slider-container .scale span {
position: absolute;
height: 5px;
border-left: 1px solid #999;
font-size: 0;
}
.slider-container .scale ins {
font-size: 9px;
text-decoration: none;
position: absolute;
left: 0;
top: 5px;
color: #999;
line-height: 1;
}
.slider-container.slider-readonly .clickable-dummy,
.slider-container.slider-readonly .pointer {
cursor: auto;
}
.theme-green .back-bar {
height: 5px;
border-radius: 2px;
background-color: #eeeeee;
background-color: #e7e7e7;
background-image: -moz-linear-gradient(top, #eeeeee, #dddddd);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#eeeeee), to(#dddddd));
background-image: -webkit-linear-gradient(top, #eeeeee, #dddddd);
background-image: -o-linear-gradient(top, #eeeeee, #dddddd);
background-image: linear-gradient(to bottom, #eeeeee, #dddddd);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffeeeeee', endColorstr='#ffdddddd', GradientType=0);
}
.theme-green .back-bar .selected-bar {
border-radius: 2px;
background-color: #a1fad0;
background-image: -moz-linear-gradient(top, #bdfade, #76fabc);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#bdfade), to(#76fabc));
background-image: -webkit-linear-gradient(top, #bdfade, #76fabc);
background-image: -o-linear-gradient(top, #bdfade, #76fabc);
background-image: linear-gradient(to bottom, #bdfade, #76fabc);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffbdfade', endColorstr='#ff76fabc', GradientType=0);
}
.theme-green .back-bar .pointer {
width: 14px;
height: 14px;
top: -5px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-radius: 10px;
border: 1px solid #AAA;
background-color: #e7e7e7;
background-image: -moz-linear-gradient(top, #eeeeee, #dddddd);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#eeeeee), to(#dddddd));
background-image: -webkit-linear-gradient(top, #eeeeee, #dddddd);
background-image: -o-linear-gradient(top, #eeeeee, #dddddd);
background-image: linear-gradient(to bottom, #eeeeee, #dddddd);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffeeeeee', endColorstr='#ffdddddd', GradientType=0);
}
.theme-green .back-bar .pointer-label {
color: #999;
}
.theme-green .back-bar .focused {
color: #333;
}
.theme-green .scale span {
border-left: 1px solid #e5e5e5;
}
.theme-green .scale ins {
color: #999;
}
.theme-blue .back-bar {
height: 5px;
border-radius: 2px;
background-color: #eeeeee;
background-color: #e7e7e7;
background-image: -moz-linear-gradient(top, #eeeeee, #dddddd);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#eeeeee), to(#dddddd));
background-image: -webkit-linear-gradient(top, #eeeeee, #dddddd);
background-image: -o-linear-gradient(top, #eeeeee, #dddddd);
background-image: linear-gradient(to bottom, #eeeeee, #dddddd);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffeeeeee', endColorstr='#ffdddddd', GradientType=0);
}
.theme-blue .back-bar .selected-bar {
border-radius: 2px;
background-color: #92c1f9;
background-image: -moz-linear-gradient(top, #b1d1f9, #64a8f9);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#b1d1f9), to(#64a8f9));
background-image: -webkit-linear-gradient(top, #b1d1f9, #64a8f9);
background-image: -o-linear-gradient(top, #b1d1f9, #64a8f9);
background-image: linear-gradient(to bottom, #b1d1f9, #64a8f9);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffb1d1f9', endColorstr='#ff64a8f9', GradientType=0);
}
.theme-blue .back-bar .pointer {
width: 14px;
height: 14px;
top: -5px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-radius: 10px;
border: 1px solid #AAA;
background-color: #e7e7e7;
background-image: -moz-linear-gradient(top, #eeeeee, #dddddd);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#eeeeee), to(#dddddd));
background-image: -webkit-linear-gradient(top, #eeeeee, #dddddd);
background-image: -o-linear-gradient(top, #eeeeee, #dddddd);
background-image: linear-gradient(to bottom, #eeeeee, #dddddd);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffeeeeee', endColorstr='#ffdddddd', GradientType=0);
}
.theme-blue .back-bar .pointer-label {
color: #999;
}
.theme-blue .back-bar .focused {
color: #333;
}
.theme-blue .scale span {
border-left: 1px solid #e5e5e5;
}
.theme-blue .scale ins {
color: #999;
}

View file

@ -1,401 +0,0 @@
/*jshint multistr:true, curly: false */
/*global jQuery:false, define: false */
/**
* jRange - Awesome range control
*
* Written by
* ----------
* Nitin Hayaran (nitinhayaran@gmail.com)
*
* Licensed under the MIT (MIT-LICENSE.txt).
*
* @author Nitin Hayaran
* @version 0.1-RELEASE
*
* Dependencies
* ------------
* jQuery (http://jquery.com)
*
**/
;
(function($, window, document, undefined) {
'use strict';
var jRange = function() {
return this.init.apply(this, arguments);
};
jRange.prototype = {
defaults: {
onstatechange: function() {},
ondragend: function() {},
onbarclicked: function() {},
isRange: false,
showLabels: true,
showScale: true,
step: 1,
format: '%s',
theme: 'theme-green',
width: 300,
disable: false,
snap: false
},
template: '<div class="slider-container">\
<div class="back-bar">\
<div class="selected-bar"></div>\
<div class="pointer low"></div><div class="pointer-label low">123456</div>\
<div class="pointer high"></div><div class="pointer-label high">456789</div>\
<div class="clickable-dummy"></div>\
</div>\
<div class="scale"></div>\
</div>',
init: function(node, options) {
this.options = $.extend({}, this.defaults, options);
this.inputNode = $(node);
this.options.value = this.inputNode.val() || (this.options.isRange ? this.options.from + ',' + this.options.from : this.options.from);
this.domNode = $(this.template);
this.domNode.addClass(this.options.theme);
this.inputNode.after(this.domNode);
this.domNode.on('change', this.onChange);
this.pointers = $('.pointer', this.domNode);
this.lowPointer = this.pointers.first();
this.highPointer = this.pointers.last();
this.labels = $('.pointer-label', this.domNode);
this.lowLabel = this.labels.first();
this.highLabel = this.labels.last();
this.scale = $('.scale', this.domNode);
this.bar = $('.selected-bar', this.domNode);
this.clickableBar = this.domNode.find('.clickable-dummy');
this.interval = this.options.to - this.options.from;
this.render();
},
render: function() {
// Check if inputNode is visible, and have some width, so that we can set slider width accordingly.
if (this.inputNode.width() === 0 && !this.options.width) {
console.log('jRange : no width found, returning');
return;
} else {
this.options.width = this.options.width || this.inputNode.width();
this.domNode.width(this.options.width);
this.inputNode.hide();
}
if (this.isSingle()) {
this.lowPointer.hide();
this.lowLabel.hide();
}
if (!this.options.showLabels) {
this.labels.hide();
}
this.attachEvents();
if (this.options.showScale) {
this.renderScale();
}
this.setValue(this.options.value);
},
isSingle: function() {
if (typeof(this.options.value) === 'number') {
return true;
}
return (this.options.value.indexOf(',') !== -1 || this.options.isRange) ?
false : true;
},
attachEvents: function() {
this.clickableBar.click($.proxy(this.barClicked, this));
this.pointers.on('mousedown touchstart', $.proxy(this.onDragStart, this));
this.pointers.bind('dragstart', function(event) {
event.preventDefault();
});
},
onDragStart: function(e) {
if ( this.options.disable || (e.type === 'mousedown' && e.which !== 1)) {
return;
}
e.stopPropagation();
e.preventDefault();
var pointer = $(e.target);
this.pointers.removeClass('last-active');
pointer.addClass('focused last-active');
this[(pointer.hasClass('low') ? 'low' : 'high') + 'Label'].addClass('focused');
$(document).on('mousemove.slider touchmove.slider', $.proxy(this.onDrag, this, pointer));
$(document).on('mouseup.slider touchend.slider touchcancel.slider', $.proxy(this.onDragEnd, this));
},
onDrag: function(pointer, e) {
e.stopPropagation();
e.preventDefault();
if (e.originalEvent.touches && e.originalEvent.touches.length) {
e = e.originalEvent.touches[0];
} else if (e.originalEvent.changedTouches && e.originalEvent.changedTouches.length) {
e = e.originalEvent.changedTouches[0];
}
var position = e.clientX - this.domNode.offset().left;
this.domNode.trigger('change', [this, pointer, position]);
},
onDragEnd: function(e) {
this.pointers.removeClass('focused')
.trigger('rangeslideend');
this.labels.removeClass('focused');
$(document).off('.slider');
this.options.ondragend.call(this, this.options.value);
},
barClicked: function(e) {
if(this.options.disable) return;
var x = e.pageX - this.clickableBar.offset().left;
if (this.isSingle())
this.setPosition(this.pointers.last(), x, true, true);
else {
var firstLeft = Math.abs(parseFloat(this.pointers.first().css('left'), 10)),
firstHalfWidth = this.pointers.first().width() / 2,
lastLeft = Math.abs(parseFloat(this.pointers.last().css('left'), 10)),
lastHalfWidth = this.pointers.first().width() / 2,
leftSide = Math.abs(firstLeft - x + firstHalfWidth),
rightSide = Math.abs(lastLeft - x + lastHalfWidth),
pointer;
if(leftSide == rightSide) {
pointer = x < firstLeft ? this.pointers.first() : this.pointers.last();
} else {
pointer = leftSide < rightSide ? this.pointers.first() : this.pointers.last();
}
this.setPosition(pointer, x, true, true);
}
this.options.onbarclicked.call(this, this.options.value);
},
onChange: function(e, self, pointer, position) {
var min, max;
min = 0;
max = self.domNode.width();
if (!self.isSingle()) {
min = pointer.hasClass('high') ? parseFloat(self.lowPointer.css("left")) + (self.lowPointer.width() / 2) : 0;
max = pointer.hasClass('low') ? parseFloat(self.highPointer.css("left")) + (self.highPointer.width() / 2) : self.domNode.width();
}
var value = Math.min(Math.max(position, min), max);
self.setPosition(pointer, value, true);
},
setPosition: function(pointer, position, isPx, animate) {
var leftPos, rightPos,
lowPos = parseFloat(this.lowPointer.css("left")),
highPos = parseFloat(this.highPointer.css("left")) || 0,
circleWidth = this.highPointer.width() / 2;
if (!isPx) {
position = this.prcToPx(position);
}
if(this.options.snap){
var expPos = this.correctPositionForSnap(position);
if(expPos === -1){
return;
}else{
position = expPos;
}
}
if (pointer[0] === this.highPointer[0]) {
highPos = Math.round(position - circleWidth);
} else {
lowPos = Math.round(position - circleWidth);
}
pointer[animate ? 'animate' : 'css']({
'left': Math.round(position - circleWidth)
});
if (this.isSingle()) {
leftPos = 0;
} else {
leftPos = lowPos + circleWidth;
rightPos = highPos + circleWidth;
}
var w = Math.round(highPos + circleWidth - leftPos);
this.bar[animate ? 'animate' : 'css']({
'width': Math.abs(w),
'left': (w>0) ? leftPos : leftPos + w
});
this.showPointerValue(pointer, position, animate);
this.isReadonly();
},
correctPositionForSnap: function(position){
var currentValue = this.positionToValue(position) - this.options.from;
var diff = this.options.width / (this.interval / this.options.step),
expectedPosition = (currentValue / this.options.step) * diff;
if( position <= expectedPosition + diff / 2 && position >= expectedPosition - diff / 2){
return expectedPosition;
}else{
return -1;
}
},
// will be called from outside
setValue: function(value) {
var values = value.toString().split(',');
values[0] = Math.min(Math.max(values[0], this.options.from), this.options.to) + '';
if (values.length > 1){
values[1] = Math.min(Math.max(values[1], this.options.from), this.options.to) + '';
}
this.options.value = value;
var prc = this.valuesToPrc(values.length === 2 ? values : [0, values[0]]);
if (this.isSingle()) {
this.setPosition(this.highPointer, prc[1]);
} else {
this.setPosition(this.lowPointer, prc[0]);
this.setPosition(this.highPointer, prc[1]);
}
},
renderScale: function() {
var s = this.options.scale || [this.options.from, this.options.to];
var prc = Math.round((100 / (s.length - 1)) * 10) / 10;
var str = '';
for (var i = 0; i < s.length; i++) {
str += '<span style="left: ' + i * prc + '%">' + (s[i] != '|' ? '<ins>' + s[i] + '</ins>' : '') + '</span>';
}
this.scale.html(str);
$('ins', this.scale).each(function() {
$(this).css({
marginLeft: -$(this).outerWidth() / 2
});
});
},
getBarWidth: function() {
var values = this.options.value.split(',');
if (values.length > 1) {
return parseFloat(values[1]) - parseFloat(values[0]);
} else {
return parseFloat(values[0]);
}
},
showPointerValue: function(pointer, position, animate) {
var label = $('.pointer-label', this.domNode)[pointer.hasClass('low') ? 'first' : 'last']();
var text;
var value = this.positionToValue(position);
// Is it higer or lower than it should be?
if ($.isFunction(this.options.format)) {
var type = this.isSingle() ? undefined : (pointer.hasClass('low') ? 'low' : 'high');
text = this.options.format(value, type);
} else {
text = this.options.format.replace('%s', value);
}
var width = label.html(text).width(),
left = position - width / 2;
left = Math.min(Math.max(left, 0), this.options.width - width);
label[animate ? 'animate' : 'css']({
left: left
});
this.setInputValue(pointer, value);
},
valuesToPrc: function(values) {
var lowPrc = ((parseFloat(values[0]) - parseFloat(this.options.from)) * 100 / this.interval),
highPrc = ((parseFloat(values[1]) - parseFloat(this.options.from)) * 100 / this.interval);
return [lowPrc, highPrc];
},
prcToPx: function(prc) {
return (this.domNode.width() * prc) / 100;
},
isDecimal: function() {
return ((this.options.value + this.options.from + this.options.to).indexOf(".")===-1) ? false : true;
},
positionToValue: function(pos) {
var value = (pos / this.domNode.width()) * this.interval;
value = parseFloat(value, 10) + parseFloat(this.options.from, 10);
if (this.isDecimal()) {
var final = Math.round(Math.round(value / this.options.step) * this.options.step *100)/100;
if (final!==0.0) {
final = '' + final;
if (final.indexOf(".")===-1) {
final = final + ".";
}
while (final.length - final.indexOf('.')<3) {
final = final + "0";
}
} else {
final = "0.00";
}
return final;
} else {
return Math.round(value / this.options.step) * this.options.step;
}
},
setInputValue: function(pointer, v) {
// if(!isChanged) return;
if (this.isSingle()) {
this.options.value = v.toString();
} else {
var values = this.options.value.split(',');
if (pointer.hasClass('low')) {
this.options.value = v + ',' + values[1];
} else {
this.options.value = values[0] + ',' + v;
}
}
if (this.inputNode.val() !== this.options.value) {
this.inputNode.val(this.options.value)
.trigger('change');
this.options.onstatechange.call(this, this.options.value);
}
},
getValue: function() {
return this.options.value;
},
getOptions: function() {
return this.options;
},
getRange: function() {
return this.options.from + "," + this.options.to;
},
isReadonly: function(){
this.domNode.toggleClass('slider-readonly', this.options.disable);
},
disable: function(){
this.options.disable = true;
this.isReadonly();
},
enable: function(){
this.options.disable = false;
this.isReadonly();
},
toggleDisable: function(){
this.options.disable = !this.options.disable;
this.isReadonly();
},
updateRange: function(range, value) {
var values = range.toString().split(',');
this.interval = parseInt(values[1]) - parseInt(values[0]);
if(value){
this.setValue(value);
}else{
this.setValue(this.getValue());
}
}
};
var pluginName = 'jRange';
// A really lightweight plugin wrapper around the constructor,
// preventing against multiple instantiations
$.fn[pluginName] = function(option) {
var args = arguments,
result;
this.each(function() {
var $this = $(this),
data = $.data(this, 'plugin_' + pluginName),
options = typeof option === 'object' && option;
if (!data) {
$this.data('plugin_' + pluginName, (data = new jRange(this, options)));
$(window).resize(function() {
data.setValue(data.getValue());
}); // Update slider position when window is resized to keep it in sync with scale
}
// if first argument is a string, call silimarly named function
// this gives flexibility to call functions of the plugin e.g.
// - $('.dial').plugin('destroy');
// - $('.dial').plugin('render', $('.new-child'));
if (typeof option === 'string') {
result = data[option].apply(data, Array.prototype.slice.call(args, 1));
}
});
// To enable plugin returns values
return result || this;
};
})(jQuery, window, document);

View file

@ -1,198 +0,0 @@
#gradient {
.horizontal(@startColor: #555, @endColor: #333) {
background-color: @endColor;
background-image: -moz-linear-gradient(left, @startColor, @endColor); // FF 3.6+
background-image: -webkit-gradient(linear, 0 0, 100% 0, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(left, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(left, @startColor, @endColor); // Opera 11.10
background-image: linear-gradient(to right, @startColor, @endColor); // Standard, IE10
background-repeat: repeat-x;
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@startColor),argb(@endColor))); // IE9 and down
}
.vertical(@startColor: #555, @endColor: #333) {
background-color: mix(@startColor, @endColor, 60%);
background-image: -moz-linear-gradient(top, @startColor, @endColor); // FF 3.6+
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(top, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(top, @startColor, @endColor); // Opera 11.10
background-image: linear-gradient(to bottom, @startColor, @endColor); // Standard, IE10
background-repeat: repeat-x;
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@startColor),argb(@endColor))); // IE9 and down
}
.directional(@startColor: #555, @endColor: #333, @deg: 45deg) {
background-color: @endColor;
background-repeat: repeat-x;
background-image: -moz-linear-gradient(@deg, @startColor, @endColor); // FF 3.6+
background-image: -webkit-linear-gradient(@deg, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(@deg, @startColor, @endColor); // Opera 11.10
background-image: linear-gradient(@deg, @startColor, @endColor); // Standard, IE10
}
.vertical-three-colors(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
background-color: mix(@midColor, @endColor, 80%);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
background-image: -webkit-linear-gradient(@startColor, @midColor @colorStop, @endColor);
background-image: -moz-linear-gradient(top, @startColor, @midColor @colorStop, @endColor);
background-image: -o-linear-gradient(@startColor, @midColor @colorStop, @endColor);
background-image: linear-gradient(@startColor, @midColor @colorStop, @endColor);
background-repeat: no-repeat;
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@startColor),argb(@endColor))); // IE9 and down, gets no color-stop at all for proper fallback
}
.radial(@innerColor: #555, @outerColor: #333) {
background-color: @outerColor;
background-image: -webkit-gradient(radial, center center, 0, center center, 460, from(@innerColor), to(@outerColor));
background-image: -webkit-radial-gradient(circle, @innerColor, @outerColor);
background-image: -moz-radial-gradient(circle, @innerColor, @outerColor);
background-image: -o-radial-gradient(circle, @innerColor, @outerColor);
background-repeat: no-repeat;
}
.striped(@color: #555, @angle: 45deg) {
background-color: @color;
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
background-image: -webkit-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: -moz-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
}
}
.slider-container {
width: 300px;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
.back-bar {
height: 10px;
position: relative;
.selected-bar {
position: absolute;
height: 100%;
}
.pointer {
position: absolute;
width: 10px;
height: 10px;
background-color: red;
cursor: col-resize;
opacity: 1;
z-index: 2;
&.last-active{
z-index: 3;
}
}
.pointer-label {
position: absolute;
top: -17px;
font-size: 8px;
background: white;
white-space: nowrap;
line-height: 1;
}
.focused {
z-index: 10;
}
}
.clickable-dummy {
cursor: pointer;
position: absolute;
width: 100%;
height: 100%;
z-index: 1;
}
.scale {
top: 2px;
position: relative;
span {
position: absolute;
height: 5px;
border-left: 1px solid #999;
font-size: 0;
}
ins {
font-size: 9px;
text-decoration: none;
position: absolute;
left: 0;
top: 5px;
color: #999;
line-height: 1;
}
}
&.slider-readonly{
.clickable-dummy, .pointer {
cursor: auto;
}
}
}
.theme-green {
.back-bar {
height: 5px;
border-radius: 2px;
background-color: #eeeeee;
#gradient > .vertical(#eeeeee, #dddddd);
.selected-bar {
border-radius: 2px;
#gradient > .vertical(#bdfade, #76fabc);
}
.pointer {
width: 14px;
height: 14px;
top: -5px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-radius: 10px;
border: 1px solid #AAA;
#gradient > .vertical(#eeeeee, #dddddd);
}
.pointer-label {
color: #999;
}
.focused {
color: #333;
}
}
.scale {
span {
border-left: 1px solid #e5e5e5;
}
ins {
color: #999;
}
}
}
.theme-blue {
.back-bar {
height: 5px;
border-radius: 2px;
background-color: #eeeeee;
#gradient > .vertical(#eeeeee, #dddddd);
.selected-bar {
border-radius: 2px;
#gradient > .vertical(#b1d1f9, #64a8f9);
}
.pointer {
width: 14px;
height: 14px;
top: -5px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-radius: 10px;
border: 1px solid #AAA;
#gradient > .vertical(#eeeeee, #dddddd);
}
.pointer-label {
color: #999;
}
.focused {
color: #333;
}
}
.scale {
span {
border-left: 1px solid #e5e5e5;
}
ins {
color: #999;
}
}
}

View file

@ -1,23 +0,0 @@
{
"name": "jquery-range",
"version": "1.0.0",
"description": "jQuery plugin to create range selector",
"main": "jquery.range-min.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "git+https://github.com/nitinhayaran/jRange.git"
},
"keywords": [
"jquery",
"range"
],
"author": "Nitin Hayaran <nitinhayaran@gmail.com>",
"license": "ISC",
"bugs": {
"url": "https://github.com/nitinhayaran/jRange/issues"
},
"homepage": "https://github.com/nitinhayaran/jRange#readme"
}

View file

@ -99,7 +99,7 @@ var FileBrowser = {
// Click on album link
$(".fbrowser").on("click", ".folders a, .path a", function(e) {
e.preventDefault();
var url = baseurl + "/fbrowser/" + FileBrowser.type + "/" + this.dataset.folder + "?mode=none";
var url = baseurl + "/fbrowser/" + FileBrowser.type + "/" + this.dataset.folder + "?mode=none&theme=frio";
FileBrowser.folder = this.dataset.folder;
FileBrowser.loadContent(url);
@ -134,7 +134,7 @@ var FileBrowser = {
console.log(FileBrowser.event, this.dataset.filename, embed, FileBrowser.id);
parent.$("body").trigger(FileBrowser.event, [
$("body").trigger(FileBrowser.event, [
this.dataset.filename,
embed,
FileBrowser.id,
@ -152,7 +152,7 @@ var FileBrowser = {
e.preventDefault();
FileBrowser.type = this.getAttribute("data-mode");
$(".fbrowser").removeClass().addClass("fbrowser " + FileBrowser.type);
url = baseurl + "/fbrowser/" + FileBrowser.type + "?mode=none";
url = baseurl + "/fbrowser/" + FileBrowser.type + "?mode=none&theme=frio";
FileBrowser.loadContent(url);
});
@ -183,10 +183,7 @@ var FileBrowser = {
return;
}
// location = baseurl + "/fbrowser/image/?mode=none"+location['hash'];
// location.reload(true);
var url = baseurl + "/fbrowser/" + FileBrowser.type + "/" + FileBrowser.folder + "?mode=none";
var url = baseurl + "/fbrowser/" + FileBrowser.type + "/" + FileBrowser.folder + "?mode=none&theme=frio";
// load new content to fbrowser window
FileBrowser.loadContent(url);
}
@ -214,10 +211,7 @@ var FileBrowser = {
return;
}
// location = baseurl + "/fbrowser/file/?mode=none"+location['hash'];
// location.reload(true);
var url = baseurl + "/fbrowser/" + FileBrowser.type + "?mode=none";
var url = baseurl + "/fbrowser/" + FileBrowser.type + "?mode=none&theme=frio";
// Load new content to fbrowser window
FileBrowser.loadContent(url);
}

View file

@ -120,7 +120,7 @@ Dialog.show = function(url, title) {
Dialog._get_url = function(type, name, id) {
var hash = name;
if (id !== undefined) hash = hash + "-" + id;
return "fbrowser/"+type+"/?mode=none#"+hash;
return "fbrowser/"+type+"/?mode=none&theme=frio#"+hash;
};
// Does load the filebrowser into the jot modal.
@ -148,7 +148,7 @@ Dialog._load = function(url) {
var type = $("#fb-type").attr("value");
// Try to fetch the hash form the url.
var match = url.match(/fbrowser\/[a-z]+\/\?mode=none(.*)/);
var match = url.match(/fbrowser\/[a-z]+\/.*(#.*)/);
if (match===null) return; //not fbrowser
var hash = match[1];

View file

@ -79,7 +79,8 @@ $is_singleuser_class = $is_singleuser ? "is-singleuser" : "is-not-singleuser";
// special minimal style for modal dialogs
if ($minimal) {
?>
<section class="minimal" style="margin:0px!important; padding:0px!important; float:none!important; display:block!important;">
<!-- <?php echo __FILE__ ?> -->
<section class="minimal">
<?php if (!empty($page['content'])) echo $page['content']; ?>
<div id="page-footer"></div>
</section>

View file

@ -0,0 +1,30 @@
<!DOCTYPE html >
<html>
<head>
<title><?php if(!empty($page['title'])) echo $page['title'] ?></title>
<script>var baseurl="<?php echo Friendica\Core\System::baseUrl() ?>";</script>
<?php if(!empty($page['htmlhead'])) echo $page['htmlhead'] ?>
</head>
<body class="minimal">
<section><?php if(!empty($page['content'])) echo $page['content']; ?>
<div id="page-footer"></div>
</section>
<!-- Modal -->
<div id="modal" class="modal fade" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-full-screen">
<div class="modal-content">
<div id="modal-header" class="modal-header">
<button id="modal-cloase" type="button" class="close" data-dismiss="modal" aria-hidden="true">
&times;
</button>
<h4 id="modal-title" class="modal-title"></h4>
</div>
<div id="modal-body" class="modal-body">
<!-- /# content goes here -->
</div>
</div>
</div>
</div>
</body>
</html>

View file

@ -1,22 +0,0 @@
<div id='adminpage'>
<h1>{{$title}} - {{$page}}</h1>
{{if $pcount eq 0}}
<div class="error-message">
{{$noplugshint}}
</div>
{{else}}
<a class="btn" href="{{$baseurl}}/admin/{{$function}}?a=r&amp;t={{$form_security_token}}">{{$reload}}</a>
<ul id='addonslist'>
{{foreach $addons as $p}}
<li class="addon {{$p.1}}">
<span class="offset-anchor" id="{{$p.0}}"></span>
<a class='toggleaddon' href='{{$baseurl}}/admin/{{$function}}/{{$p.0}}?a=t&amp;t={{$form_security_token}}#{{$p.0}}' title="{{if $p.1==on}}Disable{{else}}Enable{{/if}}" ><span class='icon {{$p.1}}'></span></a>
<a href='{{$baseurl}}/admin/{{$function}}/{{$p.0}}'><span class='name'>{{$p.2.name}}</span></a> - <span class="version">{{$p.2.version}}</span>
{{if $p.2.experimental}} {{$experimental}} {{/if}}{{if $p.2.unsupported}} {{$unsupported}} {{/if}}
<div class='desc'>{{$p.2.description nofilter}}</div>
</li>
{{/foreach}}
</ul>
{{/if}}
</div>

View file

@ -43,9 +43,9 @@
<h3>{{$plugadmtxt}}</h3>
<ul role="menu">
{{foreach $admin.addons_admin as $name => $item}}
<li role="menuitem" class="{{$item.2}}">
<a href="{{$item.0}}" {{if $item.accesskey}}accesskey="{{$item.accesskey}}"{{/if}}>
{{$item.1}}
<li role="menuitem" class="{{$item.class}}">
<a href="{{$item.url}}" {{if $item.accesskey}}accesskey="{{$item.accesskey}}"{{/if}}>
{{$item.name}}
</a>
</li>
{{/foreach}}

View file

@ -18,7 +18,7 @@
</div>
<div id="admin-settings-contactblock-block-collapse" class="panel-collapse collapse" role="tabpanel" aria-labelledby="admin-settings-contactblock-block">
<form action="{{$baseurl}}/admin/contactblock" method="post">
<form action="{{$baseurl}}/admin/blocklist/contact" method="post">
<input type="hidden" name="form_security_token" value="{{$form_security_token}}">
{{include file="field_input.tpl" field=$contacturl}}
@ -42,7 +42,7 @@
</div>
<div id="admin-settings-contactblock-blocked-collapse" class="panel-collapse collapse {{if count($contacts) > 0}}in{{/if}}" role="tabpanel" aria-labelledby="admin-settings-contactblock-blocked">
<form action="{{$baseurl}}/admin/contactblock" method="post">
<form action="{{$baseurl}}/admin/blocklist/contact" method="post">
<input type="hidden" name="form_security_token" value="{{$form_security_token}}">
{{if $contacts}}

View file

@ -5,20 +5,16 @@
<table class="table">
<tr>
<th>{{$id_header}}</th>
<th>{{$to_header}}</th>
<th>{{$url_header}}</th>
<th>{{$network_header}}</th>
<th>{{$param_header}}</th>
<th>{{$created_header}}</th>
<th>{{$last_header}}</th>
<th>{{$prio_header}}</th>
</tr>
{{foreach $entries as $e}}
<tr>
<td>{{$e.id}}</td>
<td>{{$e.name}}</td>
<td><a href="{{$e.nurl}}">{{$e.nurl}}</a></td>
<td>{{$e.network}}</td>
<td>{{$e.parameter}}</td>
<td>{{$e.created}}</td>
<td>{{$e.last}}</td>
<td>{{$e.priority}}</td>
</tr>
{{/foreach}}
</table>

View file

@ -1,44 +1,5 @@
<script>
$(function(){
$("#cnftheme").click(function(){
$.colorbox({
width: 800,
height: '90%',
/*onOpen: function(){
var theme = $("#id_theme :selected").val();
$("#cnftheme").attr('href',"{{$baseurl}}/admin/themes/"+theme);
},*/
iframe: true,
href: "{{$baseurl}}/admin/themes/" + $("#id_theme :selected").val() + "?mode=minimal",
onComplete: function(){
$("div#fancybox-content form").submit(function(e){
var url = $(this).attr('action');
// can't get .serialize() to work...
var data={};
$(this).find("input").each(function(){
data[$(this).attr('name')] = $(this).val();
});
$(this).find("select").each(function(){
data[$(this).attr('name')] = $(this).children(":selected").val();
});
console.log(":)", url, data);
$.post(url, data, function(data) {
if(timer) clearTimeout(timer);
NavUpdate();
$.colorbox.close();
})
return false;
});
}
});
return false;
});
});
$(function(){
$(".collapse").on('show.bs.collapse', function(e) {
var id = $(e.target).attr('id');
@ -50,6 +11,11 @@
$(element).addClass('in');
window.scroll(0, $(element).offset().top - 120);
}
$("#cnftheme").click(function(){
document.location.assign("{{$baseurl}}/admin/themes/" + $("#id_theme :selected").val());
return false;
});
});
</script>
<link rel="stylesheet" href="view/theme/frio/css/mod_admin.css" type="text/css" media="screen"/>
@ -73,9 +39,7 @@
</h4>
</div>
<div id="admin-settings-general-collapse" class="panel-collapse collapse" role="tabpanel" aria-labelledby="admin-settings-general">
{{include file="field_input.tpl" field=$sitename}}
{{include file="field_input.tpl" field=$hostname}}
{{include file="field_input.tpl" field=$sender_email}}
{{include file="field_textarea.tpl" field=$banner}}
{{include file="field_input.tpl" field=$shortcut_icon}}

View file

@ -2,7 +2,7 @@
<div id='adminpage-summery' class="adminpage generic-page-wrapper">
<h1>{{$title}} - {{$page}}</h1>
{{if $showwarning}}
{{if $warningtext|count}}
<div id="admin-warning-message-wrapper" class="alert alert-warning">
{{foreach $warningtext as $wt}}
<p>{{$wt nofilter}}</p>
@ -14,7 +14,7 @@
{{* The work queues short statistic. *}}
<div id="admin-summary-queues" class="col-lg-12 col-md-12 col-sm-12 col-xs-12 admin-summary">
<div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 admin-summary-label-name text-muted">{{$queues.label}}</div>
<div class="col-lg-8 col-md-8 col-sm-8 col-xs-12 admin-summary-entry"><a href="{{$baseurl}}/admin/deferred">{{$queues.deferred}}</a> - <a href="{{$baseurl}}/admin/workerqueue">{{$queues.workerq}}</a></div>
<div class="col-lg-8 col-md-8 col-sm-8 col-xs-12 admin-summary-entry"><a href="{{$baseurl}}/admin/queue/deferred">{{$queues.deferred}}</a> - <a href="{{$baseurl}}/admin/queue">{{$queues.workerq}}</a></div>
</div>
{{* Number of pending registrations. *}}

View file

@ -223,13 +223,15 @@
</td>
<td class="text-right">
{{if $u.is_deletable}}
<a href="{{$baseurl}}/admin/users/block/{{$u.uid}}?t={{$form_security_token}}" class="admin-settings-action-link"title="{{if $u.blocked}}{{$unblock}}{{else}}{{$block}}{{/if}}">
{{if $u.blocked == 0}}
<i class="fa fa-ban" aria-hidden="true"></i>
{{else}}
{{if $u.blocked}}
<a href="{{$baseurl}}/admin/users/unblock/{{$u.uid}}?t={{$form_security_token}}" class="admin-settings-action-link" title="{{$unblock}}">
<i class="fa fa-circle-o" aria-hidden="true"></i>
{{/if}}
</a>
{{else}}
<a href="{{$baseurl}}/admin/users/block/{{$u.uid}}?t={{$form_security_token}}" class="admin-settings-action-link" title="{{$block}}">
<i class="fa fa-ban" aria-hidden="true"></i>
</a>
{{/if}}
<a href="{{$baseurl}}/admin/users/delete/{{$u.uid}}?t={{$form_security_token}}" class="admin-settings-action-link" title="{{$delete}}" onclick="return confirm_delete('{{$confirm_delete}}','{{$u.name}}')">
<i class="fa fa-trash" aria-hidden="true"></i>
</a>
@ -256,7 +258,10 @@
</div>
<div class="col-xs-9 admin-settings-footer-elements text-right">
<button type="submit" name="page_users_block" value="1" class="btn btn-warning">
<i class="fa fa-ban" aria-hidden="true"></i> {{$block}} / <i class="fa fa-circle-o" aria-hidden="true"></i> {{$unblock}}
<i class="fa fa-ban" aria-hidden="true"></i> {{$block}}
</button>
<button type="submit" name="page_users_unblock" value="1" class="btn btn-default">
<i class="fa fa-circle-o" aria-hidden="true"></i> {{$unblock}}
</button>
<button type="submit" name="page_users_delete" value="1" class="btn btn-danger" onclick="return confirm_delete('{{$confirm_delete_multi}}')">
<i class="fa fa-trash" aria-hidden="true"></i> {{$delete}}

View file

@ -1,21 +0,0 @@
<div id="adminpage">
<h1>{{$title}} - {{$page}} ({{$count}})</h1>
<p>{{$info}}</p>
<table class="table">
<tr>
<th>{{$id_header}}</th>
<th>{{$param_header}}</th>
<th>{{$created_header}}</th>
<th>{{$prio_header}}</th>
</tr>
{{foreach $entries as $e}}
<tr>
<td>{{$e.id}}</td>
<td>{{$e.parameter}}</td>
<td>{{$e.created}}</td>
<td>{{$e.priority}}</td>
</tr>
{{/foreach}}
</table>
</div>

View file

@ -2,9 +2,9 @@
<div class="form-group field input color">
<label for="id_{{$field.0}}" id="label_{{$field.0}}">{{$field.1}}</label>
<div class="input-group" id="{{$field.0}}">
<span class="input-group-addon"><i></i></span>
<input class="form-control color" name="{{$field.0}}" id="id_{{$field.0}}" type="text" value="{{$field.2 nofilter}}" aria-describedby="{{$field.0}}_tip">
{{if $field.4}}<span class="required">{{$field.4}}</span>{{/if}}
<span class="input-group-addon"><i></i></span>
</div>
{{if $field.3}}
<span class="help-block" id="{{$field.0}}_tip" role="tooltip">{{$field.3 nofilter}}</span>

View file

@ -1,7 +1,4 @@
<link rel="stylesheet" href="{{$baseurl}}/view/theme/frio/frameworks/jRange/jquery.range.css" type="text/css" media="screen" />
<script src="{{$baseurl}}/view/theme/quattro/jquery.tools.min.js"></script>
<script src="{{$baseurl}}/view/theme/frio/frameworks/jRange/jquery.range.js"></script>
<script type="text/javascript" src="{{$baseurl}}/view/js/ajaxupload.js" ></script>
{{include file="field_select.tpl" field=$scheme}}
@ -17,7 +14,19 @@
{{if $contentbg_transp}}
<div class="form-group field input color">
<label for="id_{{$contentbg_transp.0}}" id="label_{{$contentbg_transp.0}}">{{$contentbg_transp.1}}</label>
<input type="hidden" class="form-control color slider-input" name="{{$contentbg_transp.0}}" id="{{$contentbg_transp.0}}" type="text" value="{{$contentbg_transp.2}}" aria-describedby="{{$contentbg_transp.0}}_tip">
<div class="row">
<div class="col-xs-9">
<input type="range" class="form-control color" id="{{$contentbg_transp.0}}_range" min="0" max="100" step="1" value="{{$contentbg_transp.2}}" onchange="{{$contentbg_transp.0}}.value = this.value" oninput="{{$contentbg_transp.0}}.value = this.value">
</div>
<div class="col-xs-3">
<div class="input-group">
<input type="text" class="form-control input-sm" name="{{$contentbg_transp.0}}" id="{{$contentbg_transp.0}}" value="{{$contentbg_transp.2}}" onchange="{{$contentbg_transp.0}}_range.value = this.value" oninput="{{$contentbg_transp.0}}_range.value = this.value" aria-describedby="{{$contentbg_transp.0}}_tip">
<span class="input-group-addon image-select">%</span>
</div>
</div>
</div>
<span id="{{$contentbg_transp.0}}_tip" class="help-block" role="tooltip">{{$contentbg_transp.3}}</span>
<div id="end_{{$contentbg_transp.0}}" class="field_end"></div>
</div>
@ -171,25 +180,6 @@
if($("#id_frio_background_image").val().length != 0) {
$("#frio_bg_image_options").show();
}
$('.slider-input').jRange({
from: 0,
to: 100,
step: 1,
scale: [0,10,20,30,40,50,60,70,80,90,100],
format: '%s',
width: '100%',
showLabels: true,
theme: 'theme-frio',
});
// The position of the slider is wrong calculated on hidden elements.
// So set an event listener toggle and update the jRange value.
$(document).on('click', '#custom-settings-title a', function() {
var bgTransp = $('#frio_contentbg_transp').val();
$('.slider-input').jRange('setValue', bgTransp);
});
});
</script>
@ -197,7 +187,3 @@
<button type="submit" value="{{$submit}}" class="settings-submit btn btn-primary" name="frio-settings-submit">{{$submit}}</button>
</div>
<div class="clearfix"></div>
<script type="text/javascript">
$(".inputRange").rangeinput();
</script>

View file

@ -72,7 +72,6 @@ function quattro_form(App $a, $align, $color, $tfs, $pfs) {
$t = Renderer::getMarkupTemplate("theme_settings.tpl" );
$o = Renderer::replaceMacros($t, [
'$submit' => L10n::t('Submit'),
'$baseurl' => System::baseUrl(),
'$title' => L10n::t("Theme settings"),
'$align' => ['quattro_align', L10n::t('Alignment'), $align, '', ['left' => L10n::t('Left'), 'center' => L10n::t('Center')]],
'$color' => ['quattro_color', L10n::t('Color scheme'), $color, '', $colors],

View file

@ -105,7 +105,11 @@
</tbody>
</table>
<div class='selectall'><a href='#' onclick="return selectall('users_ckbx');">{{$select_all}}</a></div>
<div class="submit"><input type="submit" name="page_users_block" value="{{$block}}/{{$unblock}}" /> <input type="submit" name="page_users_delete" value="{{$delete}}" onclick="return confirm_delete_multi()" /></div>
<div class="submit">
<input type="submit" name="page_users_block" value="{{$block}}" />
<input type="submit" name="page_users_unblock" value="{{$unblock}}" />
<input type="submit" name="page_users_delete" value="{{$delete}}" onclick="return confirm_delete_multi()" />
</div>
{{else}}
NO USERS?!?
{{/if}}

View file

@ -118,7 +118,6 @@ function vier_form(App $a, $style, $show_pages, $show_profiles, $show_helpers, $
$t = Renderer::getMarkupTemplate("theme_settings.tpl");
$o = Renderer::replaceMacros($t, [
'$submit' => L10n::t('Submit'),
'$baseurl' => System::baseUrl(),
'$title' => L10n::t("Theme settings"),
'$style' => ['vier_style', L10n::t('Set style'), $style, '', $styles],
'$show_pages' => ['vier_show_pages', L10n::t('Community Pages'), $show_pages, '', $show_or_not],