From 0df5788f11d1fabf0188c189a124837d1f1c1729 Mon Sep 17 00:00:00 2001 From: Christian Steinle Date: Wed, 28 Sep 2016 13:27:09 +0000 Subject: [PATCH] =?UTF-8?q?Abschluss:=20Wiederherstellung=20der=20Editoren?= =?UTF-8?q?-Technik=20(Behandlung=20von=20Bildern=20im=20Text),=20Korrektu?= =?UTF-8?q?r=20Bilderhandling=20beim=20L=C3=B6schen=20eines=20Keyvisual-Sl?= =?UTF-8?q?ider=20Elementes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/editor.js | 83 ++++++++++++++++++++++++++++++----------- lang/lang-de.php | 4 +- templates/image.php | 56 +++++++++++++++++++++++++++ templates/keyvisual.php | 9 +++-- 4 files changed, 127 insertions(+), 25 deletions(-) create mode 100644 templates/image.php diff --git a/js/editor.js b/js/editor.js index 975d2b3..0a486b2 100644 --- a/js/editor.js +++ b/js/editor.js @@ -119,10 +119,13 @@ var editor = new Object({ if (event.target.tagName === 'A' || event.target.tagName === 'SPAN') { return true; } - editor.type = event.currentTarget.dataset.editable; - if (editor.type === 'textimage') { + + var tmpEditorType = event.currentTarget.dataset.editable; + if (tmpEditorType === 'textimage') { return true; } + + editor.type = tmpEditorType; editor.waitingElement.show(); editor.name = editor.type.toUpperCase(); editor.element = $(event.currentTarget).attr('id'); @@ -335,11 +338,15 @@ var editor = new Object({ editor.name = ''; editor.contentHtml = ''; editor.contentData = null; - editor.formElement = null; + editor.preventSortStop = false; + + editor.element = null; + editor.titleElement.html(editor.title); editor.layerElement.hide(); editor.contentElement.html(''); editor.waitingElement.hide(); + }, callEditor: function () { @@ -385,6 +392,7 @@ var editor = new Object({ dataType: 'json', error: function () { console.log(webserviceUrl); + console.log(editor.type); alert('Fehler beim Holen der Editor-Daten!'); }, success: function (data) { @@ -396,7 +404,7 @@ var editor = new Object({ fillHtml: function () { if (editor.contentHtml === '' || editor.contentData === null) { - window.setTimeout(editor.fillHtml, 100); + window.setTimeout(editor.fillHtml, 50); return; } @@ -404,9 +412,8 @@ var editor = new Object({ editor.fillSpielBericht(); editor.fillStandard(); } - else if (editor.type === 'keyvisual') { + else if (editor.type === 'keyvisual' || editor.type === 'image') { imgEditor.setData(editor.contentData); - //editor.fillStandard(); } else if (editor.type === 'struktur') { navEditor.setData(editor.contentData); @@ -755,7 +762,6 @@ var navEditor = new Object({ }, close: function () { - navEditor.structureHtml = ''; navEditor.navData = null; navEditor.navPath = []; navEditor.structureHtml = ''; @@ -886,8 +892,8 @@ var imgEditor = new Object({ imgEditor.sortCancelElement.click(function () { imgEditor.enableEdit(); }); - imgEditor.sortBoxElement.on('click', '.del_handle', function () { - imgEditor.enableDelete(); + imgEditor.sortBoxElement.on('click', '.del_handle', function (event) { + imgEditor.enableDelete(event); }); imgEditor.deleteCancelElement.click(function () { imgEditor.enableEdit(); @@ -933,12 +939,23 @@ var imgEditor = new Object({ $('#navId', editor.contentElement).val(navigationId); - $.each(imgEditor.imgIDs, function (key, value) { - imgEditor.imgThumbElement.append('
  •  
  • '); - }); + if (editor.type === 'keyvisual') { + $.each(imgEditor.imgIDs, function (key, value) { + if (key === 0) { + imgEditor.imgThumbElement.append('
  • '); + return true; + } + imgEditor.imgThumbElement.append('
  •  
  • '); + }); - if (imgEditor.imgCount === 0 || imgEditor.imgData[imgEditor.imgIDs[0]].hasSlider === 'Y') { - imgEditor.sortBoxElement.append(''); + if (imgEditor.imgData[imgEditor.imgIDs[0]].hasSlider === 'Y') { + imgEditor.sortBoxElement.append(''); + } + } + else if (editor.type === 'image') { + imgEditor.imgData[imgEditor.imgIDs[0]].sliderContent = ''; + imgEditor.imgData[imgEditor.imgIDs[0]].hasSlider = 'N'; + imgEditor.fillForm(imgEditor.imgIDs[0], 0); } }, @@ -1009,6 +1026,14 @@ var imgEditor = new Object({ containment: imgEditor.imagePlaceholder, handles: 'se', minWidth: (imgEditor.imgDimension.width * imgEditor.imgDimension.width / imgEditor.imgOrigDimension.width), + create: function() { + if(imgEditor.imagePreview.innerHeight() > imgEditor.editImage.innerHeight()) { + imgEditor.imagePreview.css({width: (imgEditor.imagePreview.innerWidth() * imgEditor.editImage.innerHeight() / imgEditor.imagePreview.innerHeight()), height: imgEditor.editImage.innerHeight() }); + imgEditor.previewHeight.val(imgEditor.editImage.innerHeight()); + imgEditor.previewWidth.val(imgEditor.imagePreview.innerWidth() * imgEditor.editImage.innerHeight() / imgEditor.imagePreview.innerHeight()); + imgEditor.setCover(); + } + }, resize: function (event, ui) { imgEditor.previewHeight.val(ui.size.height); imgEditor.previewWidth.val(ui.size.width); @@ -1072,16 +1097,22 @@ var imgEditor = new Object({ imgEditor.disableUpload(); imgEditor.disableSorting(); + imgEditor.formActionElement.val('updateData'); + $('input', '.editFields').prop('disabled', false); $('.editFields').show(); }, - enableDelete: function () { + enableDelete: function (event) { imgEditor.deleteActive = true; imgEditor.disableEdit(); imgEditor.disableUpload(); imgEditor.disableSorting(); + $('#dataSet').val($(event.target).parent('li').attr('id').replace('sort', editor.type)); + $('#firstImage').val($('li:first-of-type', imgEditor.imgThumbElement).attr('id').replace('sort_', '')); + + $('#request').val('deleteData'); $('input', '.deleteFields').prop('disabled', false); $('.deleteFields').show(); }, @@ -1096,6 +1127,8 @@ var imgEditor = new Object({ imgEditor.disableDelete(); imgEditor.disableSorting(); + imgEditor.formActionElement.val('updateData'); + $('input', '.uploadFields').prop('disabled', false); $('.uploadFields').show(); }, @@ -1146,6 +1179,10 @@ var imgEditor = new Object({ } imgEditor.uploadSource = fileEvent.target.result; + if (imgEditor.imgThumbElement.is(':ui-resizable')) { + imgEditor.imgThumbElement.resizable('destroy'); + } + imgEditor.enableEdit(); imgEditor.fillForm(-1, -1); @@ -1229,8 +1266,10 @@ var imgEditor = new Object({ if (imgEditor.imgThumbElement.is(':ui-sortable')) { imgEditor.imgThumbElement.sortable('destroy'); - $.each($('li', imgEditor.imgThumbElement), function () { - $(this).append(' '); + $.each($('li', imgEditor.imgThumbElement), function (key) { + if (key > 0) { + $(this).append(' '); + } $('.sort_handle', this).remove(); }); } @@ -1242,7 +1281,7 @@ var imgEditor = new Object({ close: function () { imgEditor.isFirst = true; - imgEditor.imgCount = 1; + imgEditor.imgCount = 0; imgEditor.imgIDs = []; imgEditor.imgData = {}; imgEditor.imgPath = ''; @@ -1253,9 +1292,14 @@ var imgEditor = new Object({ imgEditor.imgDimension = {}; imgEditor.imgOrigDimension = {}; imgEditor.thumbDimension = {}; + imgEditor.coverDimension = {}; + imgEditor.uploadSource = ''; + imgEditor.chosenThumb = -1; imgEditor.editActive = true; imgEditor.sortActive = false; + imgEditor.deleteActive = false; + imgEditor.uploadActive = false; imgEditor.imgThumbElement = null; imgEditor.dataSetElement = null; @@ -1264,7 +1308,6 @@ var imgEditor = new Object({ imgEditor.sortButtonElement = null; imgEditor.sortCancelElement = null; imgEditor.deleteCancelElement = null; - imgEditor.uploadCancelElement = null; imgEditor.rightBoxElement = null; imgEditor.formActionElement = null; imgEditor.imagePlaceholder = null; @@ -1280,6 +1323,4 @@ var imgEditor = new Object({ imgEditor.previewWidth = null; imgEditor.editImage = null; } - - }); \ No newline at end of file diff --git a/lang/lang-de.php b/lang/lang-de.php index 019554b..12fb26f 100644 --- a/lang/lang-de.php +++ b/lang/lang-de.php @@ -73,9 +73,11 @@ $lang['image']['editHint'] = 'Durch Klick auf ein Vorschaubild, können die Date $lang['image']['sort'] = 'Sortieren'; $lang['image']['imageName'] = 'Bildname'; $lang['image']['imageTitle'] = 'Bildtitel'; -$lang['image']['imageType'] = 'Keyvisual-Typ'; +$lang['image']['keyvisualType'] = 'Keyvisual-Typ'; +$lang['image']['imageType'] = 'Bild-Typ'; $lang['image']['imageSingle'] = 'Einzelbild'; $lang['image']['imageSlider'] = 'Slider'; +$lang['image']['imageMore'] = 'Weitere Galeriebilder'; $lang['image']['deleteHeadLine'] = 'Löschen eines Bildes!'; $lang['image']['deleteHint'] = 'Wollen Sie das ausgewählte Bild wirklich löschen?
    '; $lang['image']['sortHeadLine'] = 'Speichern der Bildreihenfolge!'; diff --git a/templates/image.php b/templates/image.php new file mode 100644 index 0000000..b1c76f0 --- /dev/null +++ b/templates/image.php @@ -0,0 +1,56 @@ + +
    + + + + + + + + + + + + + + + + + + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + +
    +
    diff --git a/templates/keyvisual.php b/templates/keyvisual.php index 333a2c6..880a123 100644 --- a/templates/keyvisual.php +++ b/templates/keyvisual.php @@ -50,8 +50,11 @@ include_once($includeFile);

    - - + +
    + + +

     
    @@ -87,7 +90,7 @@ include_once($includeFile);

    - +