1
0
mirror of https://github.com/processwire/processwire.git synced 2025-08-18 20:41:16 +02:00

Add @matjazpotocnik suggested fix for processwire/processwire-issues#916

Co-authored-by: matjazpotocnik <matjaz.potocnik@um.si>
This commit is contained in:
Ryan Cramer
2022-05-09 10:18:20 -04:00
parent fa3fb8ec89
commit c8ecf3f51d
3 changed files with 9 additions and 4 deletions

View File

@@ -74,7 +74,8 @@ $(document).ready(function() {
// in multi-lang environment when some templates have 'noLang' option set,
// we hide language tabs/inputs when such a template is selected
if($(".langTabs").length) {
$("#template").change(function() {
var $template = $('#template');
$template.change(function() {
var $option = $(this).find("option[value='" + $(this).val() + "']");
if(parseInt($option.attr('data-nolang')) > 0) {
hideLanguageTabs();
@@ -82,6 +83,10 @@ $(document).ready(function() {
unhideLanguageTabs();
}
}).change();
var noLang = $template.attr('data-nolang');
if(typeof noLang !== 'undefined' && parseInt(noLang) > 0) {
hideLanguageTabs();
}
}
$(".InputfieldPageName .LanguageSupport input[type=text]").on('blur', function() {

View File

@@ -1 +1 @@
$(document).ready(function(){$("#select_parent_submit").hide();$("#select_parent_id").change(function(){var val=$(this).val();if(val>0)$("#select_parent_submit").click()});var submitted=false;$("#ProcessPageAdd").submit(function(){if(submitted)return false;submitted=true});$("#template").change(function(){var $t=$(this);var val=$t.val();var showPublish=false;if($t.is("select")){var $option=$t.find("option[value='"+val+"']");if($option.attr("data-publish")==="1")showPublish=true}else{showPublish=$t.attr("data-publish")==="1"}var $button=$("#submit_publish").closest(".Inputfield");if($button.length){var $button2=$("#submit_publish_add").closest(".Inputfield");if(showPublish){$button.fadeIn();$button2.fadeIn()}else{$button.fadeOut();$button2.fadeOut()}}}).change();var existsTimer=null;var existsName="";var $nameInput=$("#Inputfield__pw_page_name");var $nameWrap=$("#wrap_Inputfield__pw_page_name");var $form=$nameInput.closest("form");var ajaxURL=$form.attr("data-ajax-url");var $dupNote=$("<p class='notes'>"+$form.attr("data-dup-note")+"</p>");var $status=$("<span id='ProcessPageAddStatus'></span>");$nameWrap.children(".InputfieldHeader").append($status.hide());$nameInput.after($dupNote.hide());function checkExists(){var parent_id=$("#Inputfield_parent_id").val();var name=$nameInput.val();if(existsName==name)return;if(parent_id&&name.length>0){existsName=name;$.get(ajaxURL+"exists?parent_id="+parent_id+"&name="+name,function(data){$status.html(" "+data).css("display","inline");if($(data).hasClass("taken")){$nameInput.addClass("ui-state-error-text");$dupNote.fadeIn("fast")}else{$nameInput.removeClass("ui-state-error-text");$dupNote.hide()}})}}$("#Inputfield_title, #Inputfield__pw_page_name").keyup(function(e){if(existsTimer)clearTimeout(existsTimer);existsTimer=setTimeout(function(){checkExists()},250)});if($(".langTabs").length){$("#template").change(function(){var $option=$(this).find("option[value='"+$(this).val()+"']");if(parseInt($option.attr("data-nolang"))>0){hideLanguageTabs()}else{unhideLanguageTabs()}}).change()}$(".InputfieldPageName .LanguageSupport input[type=text]").on("blur",function(){if($(this).val().length==0)return;var $checkbox=$(this).next("label").children("input");if(!$checkbox.is(":checked"))$checkbox.prop("checked",true)})});
$(document).ready(function(){$("#select_parent_submit").hide();$("#select_parent_id").change(function(){var val=$(this).val();if(val>0)$("#select_parent_submit").click()});var submitted=false;$("#ProcessPageAdd").submit(function(){if(submitted)return false;submitted=true});$("#template").change(function(){var $t=$(this);var val=$t.val();var showPublish=false;if($t.is("select")){var $option=$t.find("option[value='"+val+"']");if($option.attr("data-publish")==="1")showPublish=true}else{showPublish=$t.attr("data-publish")==="1"}var $button=$("#submit_publish").closest(".Inputfield");if($button.length){var $button2=$("#submit_publish_add").closest(".Inputfield");if(showPublish){$button.fadeIn();$button2.fadeIn()}else{$button.fadeOut();$button2.fadeOut()}}}).change();var existsTimer=null;var existsName="";var $nameInput=$("#Inputfield__pw_page_name");var $nameWrap=$("#wrap_Inputfield__pw_page_name");var $form=$nameInput.closest("form");var ajaxURL=$form.attr("data-ajax-url");var $dupNote=$("<p class='notes'>"+$form.attr("data-dup-note")+"</p>");var $status=$("<span id='ProcessPageAddStatus'></span>");$nameWrap.children(".InputfieldHeader").append($status.hide());$nameInput.after($dupNote.hide());function checkExists(){var parent_id=$("#Inputfield_parent_id").val();var name=$nameInput.val();if(existsName==name)return;if(parent_id&&name.length>0){existsName=name;$.get(ajaxURL+"exists?parent_id="+parent_id+"&name="+name,function(data){$status.html(" "+data).css("display","inline");if($(data).hasClass("taken")){$nameInput.addClass("ui-state-error-text");$dupNote.fadeIn("fast")}else{$nameInput.removeClass("ui-state-error-text");$dupNote.hide()}})}}$("#Inputfield_title, #Inputfield__pw_page_name").keyup(function(e){if(existsTimer)clearTimeout(existsTimer);existsTimer=setTimeout(function(){checkExists()},250)});if($(".langTabs").length){var $template=$("#template");$template.change(function(){var $option=$(this).find("option[value='"+$(this).val()+"']");if(parseInt($option.attr("data-nolang"))>0){hideLanguageTabs()}else{unhideLanguageTabs()}}).change();var noLang=$template.attr("data-nolang");if(typeof noLang!=="undefined"&&parseInt(noLang)>0){hideLanguageTabs()}}$(".InputfieldPageName .LanguageSupport input[type=text]").on("blur",function(){if($(this).val().length==0)return;var $checkbox=$(this).next("label").children("input");if(!$checkbox.is(":checked"))$checkbox.prop("checked",true)})});

View File

@@ -98,7 +98,7 @@ class ProcessPageAdd extends Process implements ConfigurableModule, WirePageEdit
return array(
'title' => __('Page Add', __FILE__),
'summary' => __('Add a new page', __FILE__),
'version' => 108,
'version' => 109,
'permanent' => true,
'permission' => 'page-edit',
'icon' => 'plus-circle',
@@ -919,10 +919,10 @@ class ProcessPageAdd extends Process implements ConfigurableModule, WirePageEdit
$template = $this->template ? $this->template : reset($allowedTemplates);
/** @var InputfieldHidden $field */
$field = $modules->get('InputfieldHidden');
$field->attr('id+name', 'template');
$field->attr('value', $template->id);
if(count($template->fieldgroup) == 1 && $template->fieldgroup->hasField('title')) $numPublishable++;
$field->attr('data-publish', $numPublishable);
if($template->noLang) $field->attr('data-nolang', 1);
} else {
// multiple templates are possible so give them a select