Plugin Directory

Changeset 358274


Ignore:
Timestamp:
03/10/2011 02:25:15 PM (15 years ago)
Author:
johannesfosseus
Message:

1.3 js cleanup

Location:
drop-zone/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • drop-zone/trunk/drop-zone.js

    r354491 r358274  
    1 var addEvent = (function(){
    2     return function (el, type, fn) {
    3         if (el && el.nodeName || el === window) {
    4             el.addEventListener(type, fn, false);
    5             } else if (el && el.length) {
    6             for (var i = 0; i < el.length; i++) {
    7                 addEvent(el[i], type, fn);
    8             }
    9         }
    10     };
    11 })();
     1DropZone = {
     2    droppable:function(elements){
    123
    13 DropZone = {
    14     activeChanges:[],   
    15     droppable:function(elements) {
    16     jQuery(elements).each(function(){
    17         jQuery(this).removeAttr('data-new');
    18         });   
    19         addEvent(elements, 'dragover', function (e) {
    20             if (e.preventDefault) e.preventDefault(); // allows us to drop
    21             jQuery(this).addClass('over');
    22             return false;
     4        jQuery(elements).bind('dragover',function(e){
     5             if (e.preventDefault) e.preventDefault();
     6             jQuery(this).addClass('over');
    237        });
    24         addEvent(elements, 'dragstart', function (e) {
     8        jQuery(elements).bind('dragstart',function(e){
    259            jQuery('#dragged').attr('id', '');
    2610            jQuery(this).attr('id', 'dragged');
    2711        });
    28         addEvent(elements, 'dragleave', function () {
     12        jQuery(elements).bind('dragleave',function(e){
    2913            jQuery(this).removeClass('over');
    3014        });
    31         addEvent(elements, 'drop', function (e) {
     15        jQuery(elements).bind('drop',function(e){
    3216            if (e.stopPropagation) e.stopPropagation();
    3317            jQuery('#dragged').attr('id', '');
    34             DropZone.setArticleFromUrl(e.dataTransfer.getData('Text'), this);
     18            DropZone.setArticleFromUrl(e.originalEvent.dataTransfer.getData('Text'), this);
    3519            jQuery('#dragged').attr('id', '');
    36             return false;
    3720        });
    3821    },
    3922    trash:function(elements) {
    40         addEvent(elements, 'dragover', function (e) {
     23        jQuery(elements).bind('dragover',function(e){
    4124            if (e.preventDefault) e.preventDefault(); // allows us to drop
    4225            return false;
    4326        });
    44         addEvent(elements, 'drop', function (e) {
     27        jQuery(elements).bind('drop',function(e){
    4528            if (e.preventDefault) e.preventDefault(); // stops redirecting
    4629            var dragged = document.getElementById('dragged');
    4730            if (dragged !== null) {
    4831                jQuery('#dragged').attr('id', '');
    49                 if (dragged.getAttribute('data-removable') == 'true') {
     32                if (dragged.getAttribute('data-removable') == 'true'){
    5033                    DropZone.removeElement(dragged);
    5134                }
     
    6851    fetchElement:function(infoBlock, mainElement) {     
    6952        jQuery.get(DropZoneFront.ajaxurl, { action : 'drop-zone-submit', nonce : DropZoneFront.nonce, infoBlock: infoBlock }, function(data) {
    70             var targets = jQuery('[data-position=' + infoBlock.position + '][data-index="' + infoBlock.index + '"]');
    71             data=jQuery(data).attr('data-new','true');
    72             if (mainElement.getAttribute('data-position') == 'fake') {
    73                 var el = jQuery('div[data-position=fake][data-addable=true]');
    74                 el.before(data);
    75             } else {
    76                 jQuery(mainElement).before(data.addClass(infoBlock.first_last));
    77                 if (!(mainElement.getAttribute('data-addable') == 'true') ||
    78                         (mainElement.getAttribute('data-removable') == 'true' && mainElement.getAttribute('data-index') == -1)) {
    79                     jQuery(targets).remove();
    80                 } else if (mainElement.getAttribute('data-removable')) {
    81                     jQuery(mainElement).remove();
    82                 }
    83             }
    84             var elements = document.querySelectorAll('[data-position=' + infoBlock.position + '][data-index="' + infoBlock.index + '"][data-droppable=true][data-new=true]');           
    85             DropZone.droppable(elements);
     53            var html=jQuery(data);
     54            DropZone.droppable(html);
     55            jQuery(mainElement).before(html).remove();
    8656        });
    8757    },
     
    8959        var block = DropZone.getDataBlockFromElement(element);
    9060        block.url = url;
    91         if (!(element.getAttribute('data-addable') == 'true')) {
    92             DropZone.activeChanges[block.position + '-' + block.index] = block;
    93         }
    9461        DropZone.fetchElement(block, element);
    9562    }
    9663};
    97 addEvent(document, 'DOMContentLoaded', function() {
     64jQuery(document).ready(function(){
    9865    DropZone.droppable(document.querySelectorAll("[data-droppable=true]"));
    9966    DropZone.trash(document.querySelector('body'));
    100     document.defaultAction = false;
    10167});
  • drop-zone/trunk/drop-zone.php

    r358169 r358274  
    44Plugin URI: http://www.fosseus.se
    55Description: Drag drop frontend widget
    6 Author: Johannes Fosseus
    7 Version: 1.2.1
     6Author: Johannes Fosseus, Peo Bondesson (scripting)
     7Version: 1.3
    88*/
    99
  • drop-zone/trunk/readme.txt

    r358182 r358274  
    2222== Changelog ==
    2323
     24= 1.3 =
     25* Major js scripting cleanup by Peo Bondesson
     26
    2427= 1.2.1 =
    2528* Minor bugfix
Note: See TracChangeset for help on using the changeset viewer.