mirror of
https://github.com/processwire/processwire.git
synced 2025-08-25 23:56:41 +02:00
Various minor tweaks/updates
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -172,3 +172,17 @@
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.pw-dropdown-menu {
|
||||
.PageListStatusUnpublished {
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
.PageListStatusHidden {
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.PageListStatusNotEditable {
|
||||
cursor: not-allowed;
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -87,7 +87,7 @@ ul.InputfieldFileList li .InputfieldFileDescription {
|
||||
ul.InputfieldFileList li .InputfieldFileDescription input {
|
||||
width: 100%; }
|
||||
ul.InputfieldFileList li .InputfieldFileSort {
|
||||
display: none; }
|
||||
display: none !important; }
|
||||
|
||||
.Inputfield .InputfieldFileTags input {
|
||||
margin-bottom: 0.5em; }
|
||||
|
@@ -113,7 +113,7 @@ ul.InputfieldFileList li {
|
||||
}
|
||||
}
|
||||
.InputfieldFileSort {
|
||||
display: none;
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -28,6 +28,13 @@ class InputfieldRadios extends InputfieldSelect {
|
||||
|
||||
public function ___render() {
|
||||
|
||||
$defaults = array(
|
||||
'wbr' => true,
|
||||
'noSelectLabels' => true,
|
||||
);
|
||||
$settings = $this->wire('config')->get('InputfieldRadios');
|
||||
$settings = is_array($settings) ? array_merge($defaults, $settings) : $defaults;
|
||||
|
||||
$this->checkDefaultValue();
|
||||
$inline = false;
|
||||
$columns = (int) $this->optionColumns;
|
||||
@@ -59,14 +66,13 @@ class InputfieldRadios extends InputfieldSelect {
|
||||
if($this->isOptionSelected($key)) $checked = " checked='checked'";
|
||||
$disabled = empty($attrs['disabled']) ? "" : " disabled='disabled'";
|
||||
unset($attrs['selected'], $attrs['checked'], $attrs['disabled']);
|
||||
$textClass = 'pw-no-select';
|
||||
$textClass = $settings['noSelectLabels'] ? 'pw-no-select' : '';
|
||||
if($disabled) $textClass .= ' ui-state-disabled';
|
||||
$attrs = $this->getOptionAttributesString($attrs);
|
||||
if($attrs) $attrs = ' ' . $attrs;
|
||||
$label = str_replace(' ', ' !wbr!', $value);
|
||||
$label = $settings['wbr'] ? str_replace(' ', ' !wbr!', $value) : $value;
|
||||
$label = $this->entityEncode($label, Inputfield::textFormatBasic);
|
||||
$label = str_replace('!wbr!', '<wbr>', $label);
|
||||
$label = "<span class='$textClass'>$label</span>";
|
||||
if($settings['wbr']) $label = str_replace('!wbr!', '<wbr>', $label);
|
||||
$class = trim($this->wire('sanitizer')->entities($this->attr('class')));
|
||||
|
||||
$out .=
|
||||
|
@@ -2,6 +2,7 @@
|
||||
float: left;
|
||||
margin-right: 1em;
|
||||
margin-bottom: 1em;
|
||||
width: 70px;
|
||||
}
|
||||
|
||||
.InputfieldColumnWidthSlider {
|
||||
|
@@ -33,7 +33,7 @@ $(document).ready(function() {
|
||||
$("#Inputfield_required").change(setAsmListItemStatus);
|
||||
setAsmListItemStatus();
|
||||
|
||||
if($columnWidth.size() > 0) {
|
||||
if($columnWidth.length > 0) {
|
||||
var $slider = $("<div class='InputfieldColumnWidthSlider'></div>");
|
||||
var columnWidthVal = parseInt($("#columnWidth").val());
|
||||
$columnWidth.val(columnWidthVal + '%');
|
||||
|
@@ -1 +1 @@
|
||||
$(document).ready(function(){var e=function(){$("#field_filter_form").submit()};$("#templates_id").change(e);$("#fieldtype").change(e);$("#show_system").click(e);var b=$("#asmListItemStatus");var d=$("#columnWidth");function a(){var i=b.attr("data-tpl");if(!i){return}var k=$("#Inputfield_showIf").val();var j=$("#Inputfield_required").is(":checked")?true:false;if(k&&k.length>0){i="<i class='fa fa-question-circle'></i>"+i}if(j){i="<i class='fa fa-asterisk'></i>"+i}var h=parseInt(d.val());if(h==100){h=0}if(h>0){h=h+"%"}else{h=""}i=i.replace("%",h);b.val(i)}$("#Inputfield_showIf").change(a);$("#Inputfield_required").change(a);a();if(d.size()>0){var f=$("<div class='InputfieldColumnWidthSlider'></div>");var c=parseInt($("#columnWidth").val());d.val(c+"%");d.after(f);f.slider({range:"min",min:10,max:100,value:parseInt(d.val()),slide:function(i,h){var j=h.value+"%";d.val(j);a()}});d.change(function(){var h=parseInt($(this).val());if(h>100){h=100}if(h<10){h=10}$(this).val(h+"%");f.slider("option","value",h)})}var g=$("#ProcessFieldEdit");if(g.size()>0&&$("li.WireTab").size()>1){g.find("script").remove();g.WireTabs({items:$(".Inputfields li.WireTab"),id:"FieldEditTabs",skipRememberTabIDs:["delete"]})}$("#fieldgroupContextSelect").change(function(){var i=$("#Inputfield_id").val();var j=$(this).val();var h="./edit?id="+i;if(j>0){h+="&fieldgroup_id="+j}window.location=h});$("a.fieldFlag").click(function(){return false});$("#export_data").click(function(){$(this).select()});$(".import_toggle input[type=radio]").change(function(){var h=$(this).parents("p.import_toggle").next("table");var i=$(this).closest(".InputfieldFieldset");if($(this).is(":checked")&&$(this).val()==0){h.hide();i.addClass("ui-priority-secondary")}else{h.show();i.removeClass("ui-priority-secondary")}}).change();$("#wrap_Inputfield_send_templates").find(":input").change(function(){$("#_send_templates_changed").val("changed")});$("#viewRoles_37").click(function(){if($(this).is(":checked")){$("input.viewRoles").attr("checked","checked")}});$("input.viewRoles:not(#viewRoles_37)").click(function(){if($("#viewRoles_37").is(":checked")){return false}return true});$("input.editRoles:not(:disabled)").click(function(){if($(this).is(":checked")){$(this).closest("tr").find("input.viewRoles").attr("checked","checked")}});$(".override-select-all").click(function(){var h=$(this).closest("table").find("input[type=checkbox]");if($(this).hasClass("override-checked")){h.removeAttr("checked");$(this).removeClass("override-checked")}else{h.attr("checked","checked");$(this).addClass("override-checked")}return false})});
|
||||
$(document).ready(function(){var e=function(){$("#field_filter_form").submit()};$("#templates_id").change(e);$("#fieldtype").change(e);$("#show_system").click(e);var b=$("#asmListItemStatus");var d=$("#columnWidth");function a(){var i=b.attr("data-tpl");if(!i){return}var k=$("#Inputfield_showIf").val();var j=$("#Inputfield_required").is(":checked")?true:false;if(k&&k.length>0){i="<i class='fa fa-question-circle'></i>"+i}if(j){i="<i class='fa fa-asterisk'></i>"+i}var h=parseInt(d.val());if(h==100){h=0}if(h>0){h=h+"%"}else{h=""}i=i.replace("%",h);b.val(i)}$("#Inputfield_showIf").change(a);$("#Inputfield_required").change(a);a();if(d.length>0){var f=$("<div class='InputfieldColumnWidthSlider'></div>");var c=parseInt($("#columnWidth").val());d.val(c+"%");d.after(f);f.slider({range:"min",min:10,max:100,value:parseInt(d.val()),slide:function(i,h){var j=h.value+"%";d.val(j);a()}});d.change(function(){var h=parseInt($(this).val());if(h>100){h=100}if(h<10){h=10}$(this).val(h+"%");f.slider("option","value",h)})}var g=$("#ProcessFieldEdit");if(g.size()>0&&$("li.WireTab").size()>1){g.find("script").remove();g.WireTabs({items:$(".Inputfields li.WireTab"),id:"FieldEditTabs",skipRememberTabIDs:["delete"]})}$("#fieldgroupContextSelect").change(function(){var i=$("#Inputfield_id").val();var j=$(this).val();var h="./edit?id="+i;if(j>0){h+="&fieldgroup_id="+j}window.location=h});$("a.fieldFlag").click(function(){return false});$("#export_data").click(function(){$(this).select()});$(".import_toggle input[type=radio]").change(function(){var h=$(this).parents("p.import_toggle").next("table");var i=$(this).closest(".InputfieldFieldset");if($(this).is(":checked")&&$(this).val()==0){h.hide();i.addClass("ui-priority-secondary")}else{h.show();i.removeClass("ui-priority-secondary")}}).change();$("#wrap_Inputfield_send_templates").find(":input").change(function(){$("#_send_templates_changed").val("changed")});$("#viewRoles_37").click(function(){if($(this).is(":checked")){$("input.viewRoles").attr("checked","checked")}});$("input.viewRoles:not(#viewRoles_37)").click(function(){if($("#viewRoles_37").is(":checked")){return false}return true});$("input.editRoles:not(:disabled)").click(function(){if($(this).is(":checked")){$(this).closest("tr").find("input.viewRoles").attr("checked","checked")}});$(".override-select-all").click(function(){var h=$(this).closest("table").find("input[type=checkbox]");if($(this).hasClass("override-checked")){h.removeAttr("checked");$(this).removeClass("override-checked")}else{h.attr("checked","checked");$(this).addClass("override-checked")}return false})});
|
@@ -784,6 +784,7 @@ class ProcessPageEdit extends Process implements WirePageEditor, ConfigurableMod
|
||||
|
||||
$fields->attr('id', $id);
|
||||
$fields->attr('title', $title);
|
||||
$fields->addClass('WireTab');
|
||||
$this->addTab($id, $title);
|
||||
|
||||
if($this->page->template->nameContentTab) {
|
||||
@@ -1446,13 +1447,23 @@ class ProcessPageEdit extends Process implements WirePageEditor, ConfigurableMod
|
||||
*
|
||||
*/
|
||||
protected function ___processSaveRedirect($redirectUrl) {
|
||||
if(!$redirectUrl) $redirectUrl = "./?id={$this->page->id}&s=1";
|
||||
if($redirectUrl) {
|
||||
$redirectUrl .= (strpos($redirectUrl, '?') === false ? '?' : '&') . 's=1';
|
||||
} else {
|
||||
$redirectUrl = "./?id={$this->page->id}&s=1";
|
||||
}
|
||||
$redirectUrl .= "&c=" . count($this->changes);
|
||||
$modal = $this->wire('config')->modal;
|
||||
if($modal) $redirectUrl .= "&modal=$modal";
|
||||
if(count($this->fields)) {
|
||||
if(count($this->fields) == 1) $redirectUrl .= "&field={$this->field->name}";
|
||||
else $redirectUrl .= "&fields=" . implode(',', array_keys($this->fields));
|
||||
if(count($this->changes)) $redirectUrl .= "&changes=" . implode(',', $this->changes);
|
||||
if(count($this->fields) == 1) {
|
||||
$redirectUrl .= "&field={$this->field->name}";
|
||||
} else {
|
||||
$redirectUrl .= "&fields=" . implode(',', array_keys($this->fields));
|
||||
}
|
||||
if(count($this->changes)) {
|
||||
$redirectUrl .= "&changes=" . implode(',', $this->changes);
|
||||
}
|
||||
}
|
||||
$this->redirectUrl = $redirectUrl;
|
||||
$this->session->redirect($redirectUrl);
|
||||
|
@@ -509,9 +509,11 @@ class ProcessPageList extends Process implements ConfigurableModule {
|
||||
$id = $page->id;
|
||||
if(in_array($id, $skipPageIDs)) continue;
|
||||
$url = '';
|
||||
$editable = false;
|
||||
|
||||
if($page->editable()) {
|
||||
$url = $page->editUrl();
|
||||
$editable = true;
|
||||
} else if($page->viewable()) {
|
||||
$url = $page->url();
|
||||
} else if(!$page->listable()) {
|
||||
@@ -520,13 +522,21 @@ class ProcessPageList extends Process implements ConfigurableModule {
|
||||
|
||||
$numChildren = $id > 1 ? $page->numChildren : 0;
|
||||
$label = $renderer->getPageLabel($page, array('noTags' => true));
|
||||
if($page->isUnpublished()) $label = "<s>$label</s>";
|
||||
if(strlen($label) > $maxLabelLength) {
|
||||
$label = substr($label, 0, $maxLabelLength);
|
||||
$pos = strrpos($label, ' ');
|
||||
if($pos !== false) $label = substr($label, 0, $pos);
|
||||
$label .= ' …';
|
||||
}
|
||||
$labelClasses = array();
|
||||
if($page->isUnpublished()) $labelClasses[] = 'PageListStatusUnpublished';
|
||||
if($page->isHidden()) $labelClasses[] = 'PageListStatusHidden';
|
||||
if($page->hasStatus(Page::statusLocked)) $labelClasses[] = 'PageListStatusLocked';
|
||||
if($page->hasStatus(Page::statusDraft)) $labelClasses[] = 'PageListStatusDraft';
|
||||
if(!$editable) $labelClasses[] = 'PageListStatusNotEditable';
|
||||
if(count($labelClasses)) {
|
||||
$label = "<span class='" . implode(' ', $labelClasses) . "'>$label</span>";
|
||||
}
|
||||
if($numChildren) $label .= " <small>$numChildren</small>";
|
||||
$label .= ' ';
|
||||
|
||||
@@ -535,6 +545,7 @@ class ProcessPageList extends Process implements ConfigurableModule {
|
||||
'id' => $id,
|
||||
'label' => $label,
|
||||
'icon' => $page->getIcon(),
|
||||
'edit' => $editable
|
||||
);
|
||||
|
||||
if($page->id > 1 && $page->numChildren) {
|
||||
|
Reference in New Issue
Block a user