openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit 23643712d2102514d5488ace5a7087193080c31a
parent 28599943cdc0d92a4ae67ddef3ad17d2a9d1443e
Author: Jan Dankert <devnull@localhost>
Date:   Thu, 24 Jul 2014 23:39:27 +0200

Drag n Drop von Verzeichnisobjekten erzeugt einen neuen, modalen Dialog.

Diffstat:
themes/default/js/openrat.js | 21++++++++++++++-------
themes/default/js/plugin/jquery-plugin-orLinkify.js | 4++--
2 files changed, 16 insertions(+), 9 deletions(-)

diff --git a/themes/default/js/openrat.js b/themes/default/js/openrat.js @@ -602,13 +602,14 @@ function registerViewEvents( viewEl ) } }); } ); - // Drag n Drop für Inhaltselemente (Dateien,Seiten,Ordner,Verknuepfungen) + // Drag n Drop: Inhaltselemente (Dateien,Seiten,Ordner,Verknuepfungen) koennen auf Ordner gezogen werden. $('div.content li.object').draggable( {cursor:'move',revert: 'invalid' }); $('div.content li.object > div.entry[data-type=\'folder\']').droppable( {accept:'li.object',hoverClass: 'drophover',activeClass: 'dropactive',drop: function(event, ui) { var dropped = ui.draggable; var droppedOn = $(this).parent(); //alert('Moving '+$(dropped).attr('data-id')+' to folder '+$(droppedOn).attr('data-id') ); + startDialog($(this).text(),'folder','edit',$(droppedOn).attr('data-id'),{'action':'folder','subaction':'edit','id':$(droppedOn).attr('data-id'),'source_id':$(dropped).attr('data-id')}); /* if ( $(dropped).closest('div.panel').attr('id') == $(droppedOn).closest('div.panel').attr('id') ) $(dropped).css({top: 0,left: 0}); // Nicht auf das eigene Fenster fallen lassen. @@ -792,16 +793,22 @@ function startView( element,method ) * @param action Action * @param id Id */ -function startDialog( name,method,modal ) +function startDialog( name,action,method,id,params ) { - var action = $('#panel-content').find('li.active').data('action'); - var id = $('#panel-content').find('li.active').data('id' ); + if ( action== null) + action = $('#panel-content').find('li.active').data('action'); + if (id==null) + id = $('#panel-content').find('li.active').data('id' ); + if (params==null) + params = {}; $('div#filler').fadeTo(500,0.5); $('div#dialog').html('<div class="header"><ul class="views"><li class="action active"><img class="icon" title="" src="./themes/default/images/icon/'+method+'.png" /><div class="tabname" style="width:100px;">'+name+'</div></li></ul></div><div class="content" />'); $('div#dialog').show(); - - loadView( $('div#dialog div.content'), action,method,id ); + + //alert("neuer Dialog2: "+name+" action: "+action+" method: "+method+ " id:"+id + " params:"+params); + + loadView( $('div#dialog div.content'), action,method,id,params ); //$('div#workbench div.panel.modal').parent().addClass('modal'); //$('div#workbench').addClass('modal'); @@ -1438,7 +1445,7 @@ function createUrl(action,subaction,id,extraid) { url += '?0=0'; jQuery.each(extraid, function(name, field) { - url = url + '&' + field.name + '=' + field.value; + url = url + '&' + name + '=' + field; }); } else diff --git a/themes/default/js/plugin/jquery-plugin-orLinkify.js b/themes/default/js/plugin/jquery-plugin-orLinkify.js @@ -27,12 +27,12 @@ jQuery.fn.orLinkify = function() else if ( type == 'modal' ) { - startDialog($(this).attr('data-method'),true ); + startDialog($(this).attr('data-name'),null,$(this).attr('data-method') ); } else if ( type == 'dialog' ) { - startDialog($(this).attr('data-name'),$(this).attr('data-method'),false ); + startDialog($(this).attr('data-name'),null,$(this).attr('data-method') ); } else if ( type == 'url' )