Changeset 802 for branches


Ignore:
Timestamp:
03/28/07 16:15:10 (12 years ago)
Author:
ray
Message:

update branch with changes from trunk

Location:
branches/ray/plugins
Files:
2 added
100 edited
1 copied

Legend:

Unmodified
Added
Removed
  • branches/ray/plugins/ExtendedFileManager/assets/images.js

    r761 r802  
    3232 
    3333function renameFile(oldPath) { 
    34     // strip directory and extension 
    35     var oldName=oldPath.replace(/.*%2F/,'').replace(/\..*$/,''); 
    36     var newName = prompt(i18n('Please enter new name for this file...'), oldName); 
    37  
     34 // strip directory and extension 
     35  var oldName=oldPath.replace(/.*%2F/,'').replace(/\..*$/,''); 
     36   
     37  var rename = function (newName) 
     38  { 
    3839    if(newName == '' || newName == null || newName == oldName) 
    3940    { 
     
    4748    var viewtype = selection.options[selection.selectedIndex].value; 
    4849    location.href = _backend_url + "__function=images&mode="+mode+"&dir="+dir+"&rename="+oldPath+"&renameTo="+newName+"&viewtype="+viewtype; 
    49 } 
    50 function renameDir(oldName) { 
    51     // strip directory and extension 
    52     
     50  } 
     51   
     52   // IE7 has crippled the prompt() 
     53  if ( Xinha.ie_version > 6 ) 
     54  { 
     55    popupPrompt(i18n("Please enter new name for this file..."), oldName, rename, i18n("Rename")); 
     56  } 
     57  else 
     58  { 
     59    var newName = prompt(i18n('Please enter new name for this file...'), oldName); 
     60    rename(newName); 
     61  } 
     62} 
     63function renameDir(oldName)  
     64{ 
     65  // strip directory and extension 
     66 
     67  function rename(newName) 
     68  { 
     69    if(newName == '' || newName == null || newName == oldName) 
     70    { 
     71      alert(i18n('Cancelled rename.')); 
     72      return false; 
     73    } 
     74    var mode=window.top.document.getElementById('manager_mode').value; 
     75    var selection = window.top.document.getElementById('dirPath'); 
     76    var dir = selection.options[selection.selectedIndex].value; 
     77    selection = window.top.document.getElementById('viewtype'); 
     78    var viewtype = selection.options[selection.selectedIndex].value; 
     79    location.href = _backend_url + "__function=images&mode="+mode+"&dir="+dir+"&rename="+oldName+"&renameTo="+newName+"&viewtype="+viewtype; 
     80  } 
     81   
     82  // IE7 has crippled the prompt() 
     83  if ( Xinha.ie_version > 6 ) 
     84  { 
     85    popupPrompt(i18n('Please enter new name for this folder...'), oldName, rename, i18n("Rename")); 
     86  } 
     87  else 
     88  { 
    5389    var newName = prompt(i18n('Please enter new name for this folder...'), oldName); 
    54  
    55     if(newName == '' || newName == null || newName == oldName) 
    56     { 
    57         alert(i18n('Cancelled rename.')); 
    58         return false; 
    59     } 
    60     var mode=window.top.document.getElementById('manager_mode').value; 
    61     var selection = window.top.document.getElementById('dirPath'); 
    62     var dir = selection.options[selection.selectedIndex].value; 
    63     selection = window.top.document.getElementById('viewtype'); 
    64     var viewtype = selection.options[selection.selectedIndex].value; 
    65     location.href = _backend_url + "__function=images&mode="+mode+"&dir="+dir+"&rename="+oldName+"&renameTo="+newName+"&viewtype="+viewtype; 
     90    rename(newName); 
     91  } 
    6692} 
    6793function copyFile(file,action) 
  • branches/ray/plugins/ExtendedFileManager/assets/manager.js

    r775 r802  
    518518function newFolder() 
    519519{ 
    520     var folder = prompt(i18n('Please enter name for new folder...'), i18n('Untitled')); 
     520  function createFolder(folder) 
     521  { 
    521522    var selection = document.getElementById('dirPath'); 
    522523    var dir = selection.options[selection.selectedIndex].value; 
     
    524525    if(folder == thumbdir) 
    525526    { 
    526         alert(i18n('Invalid folder name, please choose another folder name.')); 
    527         return false; 
     527      alert(i18n('Invalid folder name, please choose another folder name.')); 
     528      return false; 
    528529    } 
    529530 
    530531    if (folder && folder != '' && typeof imgManager != 'undefined') 
    531         imgManager.newFolder(dir, encodeURI(folder)); 
     532    { 
     533      imgManager.newFolder(dir, encodeURI(folder)); 
     534    } 
     535  } 
     536    // IE7 has crippled the prompt() 
     537  if ( Xinha.ie_version > 6 ) 
     538  { 
     539    popupPrompt(i18n('Please enter name for new folder...'), i18n('Untitled'), createFolder, i18n("New Folder")); 
     540  } 
     541  else 
     542  { 
     543    var folder = prompt(i18n('Please enter name for new folder...'), i18n('Untitled')); 
     544    createFolder(folder); 
     545  } 
    532546} 
    533547 
  • branches/ray/plugins/ExtendedFileManager/assets/popup.js

    r761 r802  
    4848    window.close(); 
    4949} 
     50 
     51function popupPrompt( prompt, value, handler, title) 
     52{ 
     53   
     54    Dialog("prompt.html", function(param) 
     55    { 
     56      if (!param) // user must have pressed Cancel 
     57      { 
     58        return false; 
     59      } 
     60      else 
     61      { 
     62        handler (param.value); 
     63      } 
     64    }, {prompt:prompt,value:value,title:title}); 
     65} 
  • branches/ray/plugins/ExtendedFileManager/lang/de.js

    r761 r802  
    8989  "Other" : "Andere...", 
    9090  "Rename": "Umbenennen", 
    91   "Please enter new name for this file...": "Bite neuen Namen fÃŒr diese Datei eingeben...", 
     91  "Please enter new name for this file...": "Bitte neuen Namen fÃŒr diese Datei eingeben...", 
    9292  "Unable to rename file. File of the same name already exists or\nfolder doesn't have write permission.": "Umbenennen nicht möglich. Evtl. Dateiname schon vorhanden oder keine Schreibrechte.", 
    9393  "Cancelled rename.": "Umbenennen abgebrochen.", 
  • branches/ray/plugins/ImageManager/assets/manager.js

    r775 r802  
    293293 
    294294 
    295         function newFolder()  
    296         { 
    297      var folder = prompt(i18n('Please enter name for new folder...'), i18n('Untitled')); 
    298                 var selection = document.getElementById('dirPath'); 
    299                 var dir = selection.options[selection.selectedIndex].value; 
    300  
    301                                 if(folder == thumbdir) 
     295        function newFolder() 
     296        { 
     297                function createFolder(folder) 
     298                { 
     299                        var selection = document.getElementById('dirPath'); 
     300                        var dir = selection.options[selection.selectedIndex].value; 
     301 
     302                        if(folder == thumbdir) 
     303                        { 
     304                                alert(i18n('Invalid folder name, please choose another folder name.')); 
     305                                return false; 
     306                        } 
     307 
     308                        if (folder && folder != '' && typeof imgManager != 'undefined') 
     309                        { 
     310                                imgManager.newFolder(dir, encodeURI(folder)); 
     311                        } 
     312                } 
     313                // IE7 has crippled the prompt() 
     314                if (Xinha.ie_version > 6) 
     315                { 
     316                        Dialog("newFolder.html", function(param) 
     317                        { 
     318                                if (!param) // user must have pressed Cancel 
    302319                                { 
    303                                         alert(i18n('Invalid folder name, please choose another folder name.')); 
    304320                                        return false; 
    305321                                } 
    306  
    307                                 if (folder && folder != '' && typeof imgManager != 'undefined')  
    308                                         imgManager.newFolder(dir, encodeURI(folder));  
    309    } 
    310          addEvent(window, 'load', init); 
     322                                else 
     323                                { 
     324                                        var folder = param['f_foldername']; 
     325                                        createFolder(folder); 
     326                                } 
     327                        }, null); 
     328                } 
     329                else 
     330                { 
     331                        var folder = prompt(i18n('Please enter name for new folder...'), i18n('Untitled')); 
     332                        createFolder(folder); 
     333                } 
     334        } 
     335        addEvent(window, 'load', init); 
  • branches/ray/plugins/TableOperations/table-operations.js

    r761 r802  
    461461        } 
    462462 
     463        function cellMerge(table, cell_index, row_index, no_cols, no_rows) { 
     464                var rows = []; 
     465                var cells = []; 
     466                try { 
     467                        for (i=row_index; i<row_index+no_rows; i++) { 
     468                                var row = table.rows[i]; 
     469                                for (j=cell_index; j<cell_index+no_cols; j++) { 
     470                                        if (row.cells[j].colSpan > 1 || row.cells[j].rowSpan > 1) { 
     471                                                splitCell(row.cells[j]); 
     472                                        } 
     473                                        cells.push(row.cells[j]); 
     474                                } 
     475                                if (cells.length > 0) { 
     476                                        rows.push(cells); 
     477                                        cells = []; 
     478                                } 
     479                        } 
     480                } catch(e) {  
     481                        alert("Invalid selection"); 
     482                        return false; 
     483                } 
     484                var row_index1 = rows[0][0].parentNode.rowIndex; 
     485                var row_index2 = rows[rows.length-1][0].parentNode.rowIndex; 
     486                var row_span2 = rows[rows.length-1][0].rowSpan; 
     487                var HTML = ""; 
     488                for (i = 0; i < rows.length; ++i) { 
     489                        var cells = rows[i]; 
     490                        for (var j = 0; j < cells.length; ++j) { 
     491                                var cell = cells[j]; 
     492                                HTML += cell.innerHTML; 
     493                                (i || j) && (cell.parentNode.removeChild(cell)); 
     494                        } 
     495                } 
     496                var td = rows[0][0]; 
     497                td.innerHTML = HTML; 
     498                td.rowSpan = row_index2 - row_index1 + row_span2; 
     499                var col_span = 0; 
     500                for(j=0; j<rows[0].length; j++) { 
     501                        col_span += rows[0][j].colSpan; 
     502                } 
     503                td.colSpan = col_span; 
     504                editor.selectNodeContents(td); 
     505                editor.forceRedraw(); 
     506                editor.focusEditor(); 
     507        } 
     508 
    463509        switch (button_id) { 
    464510                // ROWS 
     
    596642                break; 
    597643            case "TO-cell-merge": 
    598                 // !! FIXME: Mozilla specific !! 
     644                //Mozilla, as opposed to IE, allows the selection of several cells, which is fine :) 
    599645                var sel = editor._getSelection(); 
    600                 var range, i = 0; 
    601                 var rows = []; 
    602                 var row = null; 
    603                 var cells = null; 
    604                 if (!HTMLArea.is_ie) { 
    605                         try { 
    606                                 if (sel.rangeCount < 2) { 
    607                                         alert(HTMLArea._lc("Please select the cells you want to merge.", "TableOperations")); 
    608                                         break; 
     646                if (!HTMLArea.is_ie && sel.rangeCount > 1) { 
     647                        var range = sel.getRangeAt(0); 
     648                        var td = range.startContainer.childNodes[range.startOffset]; 
     649                        var tr = td.parentNode; 
     650                        var cell_index = td.cellIndex;           
     651                        var row_index = tr.rowIndex; 
     652                        var row_index2 = 0; 
     653                        var rownum = row_index; 
     654                        var no_cols = 0; 
     655                        var row_colspan = 0; 
     656                        var td2, tr2; 
     657                        for(i=0; i<sel.rangeCount; i++) { 
     658                                range = sel.getRangeAt(i); 
     659                                        td2 = range.startContainer.childNodes[range.startOffset]; 
     660                                        tr2 = td2.parentNode;    
     661                                        if(tr2.rowIndex != rownum) { 
     662                                                rownum = tr2.rowIndex; 
     663                                                row_colspan = 0; 
     664                                        } 
     665                                        row_colspan += td2.colSpan; 
     666                                        if(row_colspan > no_cols) { 
     667                                                no_cols = row_colspan; 
     668                                        } 
     669                                        if(tr2.rowIndex + td2.rowSpan - 1 > row_index2) { 
     670                                                row_index2 = tr2.rowIndex + td2.rowSpan - 1; 
     671                                        } 
    609672                                } 
    610                                 while (range = sel.getRangeAt(i++)) { 
    611                                         var td = range.startContainer.childNodes[range.startOffset]; 
    612                                         if (td.parentNode != row) { 
    613                                                 row = td.parentNode; 
    614                                                 (cells) && rows.push(cells); 
    615                                                 cells = []; 
    616                                         } 
    617                                         cells.push(td); 
    618                                 } 
    619                         } catch(e) {/* finished walking through selection */} 
    620                         rows.push(cells); 
     673                        var no_rows = row_index2 - row_index + 1; 
     674                        var table = tr.parentNode; 
     675                        cellMerge(table, cell_index, row_index, no_cols, no_rows);  
    621676                } else { 
    622                         // Internet Explorer "browser" 
     677                        // Internet Explorer "browser" or not more than one cell selected in Moz 
    623678                        var td = this.getClosest("td"); 
    624679                        if (!td) { 
     
    626681                                break; 
    627682                        } 
    628                         var tr = td.parentElement; 
    629                         var no_cols = prompt(HTMLArea._lc("How many columns would you like to merge?", "TableOperations"), 2); 
    630                         if (!no_cols) { 
    631                                 // cancelled 
    632                                 break; 
    633                         } 
    634                         var no_rows = prompt(HTMLArea._lc("How many rows would you like to merge?", "TableOperations"), 2); 
    635                         if (!no_rows) { 
    636                                 // cancelled 
    637                                 break; 
    638                         } 
    639                         var cell_index = td.cellIndex; 
    640                         while (no_rows-- > 0) { 
    641                                 td = tr.cells[cell_index]; 
    642                                 cells = [td]; 
    643                                 for (var i = 1; i < no_cols; ++i) { 
    644                                         td = td.nextSibling; 
    645                                         if (!td) { 
    646                                                 break; 
    647                                         } 
    648                                         cells.push(td); 
     683                        editor._popupDialog("plugin://TableOperations/merge_cells.html", function(param) { 
     684                                if (!param) {   // user pressed Cancel 
     685                                        return false; 
    649686                                } 
    650                                 rows.push(cells); 
    651                                 tr = tr.nextSibling; 
    652                                 if (!tr) { 
    653                                         break; 
    654                                 } 
    655                         } 
    656                 } 
    657                 var HTML = ""; 
    658                 for (i = 0; i < rows.length; ++i) { 
    659                         // i && (HTML += "<br />"); 
    660                         var cells = rows[i]; 
    661                         for (var j = 0; j < cells.length; ++j) { 
    662                                 // j && (HTML += "&nbsp;"); 
    663                                 var cell = cells[j]; 
    664                                 HTML += cell.innerHTML; 
    665                                 (i || j) && (cell.parentNode.removeChild(cell)); 
    666                         } 
    667                 } 
    668                 var td = rows[0][0]; 
    669                 td.innerHTML = HTML; 
    670                 td.rowSpan = rows.length; 
    671                 td.colSpan = rows[0].length; 
    672                 editor.selectNodeContents(td); 
    673                 editor.forceRedraw(); 
    674                 editor.focusEditor(); 
     687                                no_cols = parseInt(param['f_cols'],10) + 1; 
     688                                no_rows = parseInt(param['f_rows'],10) + 1; 
     689                                var tr = td.parentNode; 
     690                                var cell_index = td.cellIndex; 
     691                                var row_index = tr.rowIndex; 
     692                                var table = tr.parentNode; 
     693                                cellMerge(table, cell_index, row_index, no_cols, no_rows); 
     694                        }, null);        
     695                } 
    675696                break; 
    676697 
Note: See TracChangeset for help on using the changeset viewer.