From: Thyamad c. <th...@us...> - 2005-09-29 19:50:04
|
Update of /cvsroot/thyapi/thyapi/thywidgets/external/fckeditor/editor/filemanager/browser/mcpuk In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv563/thywidgets/external/fckeditor/editor/filemanager/browser/mcpuk Added Files: browser.css browser.html frmactualfolder.html frmcreatefolder.html frmfolders.html frmimageeditor.html frmresourceslist.html frmresourcetype.html frmupload.html Log Message: Commiting file additions and modification from SVN revision 2028 to 2029... Changes made by frank on 2005-09-29 21:42:57 +0200 (Thu, 29 Sep 2005) corresponding to SVN revision 2029 with message: updating fckeditor in dynapi --- NEW FILE: frmfolders.html --- <!-- * FCKeditor - The text editor for internet * Copyright (C) 2003-2005 Frederico Caldeira Knabben * * Licensed under the terms of the GNU Lesser General Public License: * http://www.opensource.org/licenses/lgpl-license.php * * For further information visit: * http://www.fckeditor.net/ * * File Name: frmfolders.html * This page shows the list of folders available in the parent folder * of the current folder. * * File Authors: * Frederico Caldeira Knabben (fr...@fc...) --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <link href="browser.css" type="text/css" rel="stylesheet"> <script type="text/javascript" src="js/fckxml.js"></script> <script type="text/javascript" src="js/common.js"></script> <script language="javascript"> var sActiveFolder ; var bIsLoaded = false ; var iIntervalId ; var oListManager = new Object() ; oListManager.Init = function() { this.Table = document.getElementById('tableFiles') ; this.UpRow = document.getElementById('trUp') ; this.TableRows = new Object() ; } oListManager.Clear = function() { // Remove all other rows available. while ( this.Table.rows.length > 1 ) this.Table.deleteRow(1) ; // Reset the TableRows collection. this.TableRows = new Object() ; } oListManager.AddItem = function( folderName, folderPath ) { // Create the new row. var oRow = this.Table.insertRow(-1) ; oRow.className = 'FolderListFolder' ; // Build the link to view the folder. var sLink = '<a href="#" onclick="OpenFolder(\'' + folderPath + '\');return false;">' ; // Add the folder icon cell. var oCell = oRow.insertCell(-1) ; oCell.width = 16 ; oCell.innerHTML = sLink + '<img alt="" src="images/spacer.gif" width="16" height="16" border="0"></a>' ; // Add the folder name cell. oCell = oRow.insertCell(-1) ; oCell.noWrap = true ; oCell.innerHTML = ' ' + sLink + folderName + '</a>' ; this.TableRows[ folderPath ] = oRow ; } oListManager.ShowUpFolder = function( upFolderPath ) { this.UpRow.style.display = ( upFolderPath != null ? '' : 'none' ) ; if ( upFolderPath != null ) { document.getElementById('linkUpIcon').onclick = document.getElementById('linkUp').onclick = function() { LoadFolders( upFolderPath ) ; return false ; } } } function CheckLoaded() { if ( window.top.IsLoadedActualFolder && window.top.IsLoadedCreateFolder && window.top.IsLoadedUpload && window.top.IsLoadedResourcesList ) { window.clearInterval( iIntervalId ) ; bIsLoaded = true ; OpenFolder( sActiveFolder ) ; } } function OpenFolder( folderPath ) { sActiveFolder = folderPath ; if ( ! bIsLoaded ) { if ( ! iIntervalId ) iIntervalId = window.setInterval( CheckLoaded, 100 ) ; return ; } // Change the style for the select row (to show the opened folder). for ( var sFolderPath in oListManager.TableRows ) { oListManager.TableRows[ sFolderPath ].className = ( sFolderPath == folderPath ? 'FolderListCurrentFolder' : 'FolderListFolder' ) ; } // Set the current folder in all frames. window.parent.frames['frmActualFolder'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ; window.parent.frames['frmCreateFolder'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ; window.parent.frames['frmUpload'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ; // Load the resources list for this folder. window.parent.frames['frmResourcesList'].LoadResources( oConnector.ResourceType, folderPath ) ; } function LoadFolders( folderPath ) { // Clear the folders list. oListManager.Clear() ; // Get the parent folder path. var sParentFolderPath ; if ( folderPath != '/' ) sParentFolderPath = folderPath.substring( 0, folderPath.lastIndexOf( '/', folderPath.length - 2 ) + 1 ) ; // Show/Hide the Up Folder. oListManager.ShowUpFolder( sParentFolderPath ) ; if ( folderPath != '/' ) { sActiveFolder = folderPath ; oConnector.CurrentFolder = sParentFolderPath oConnector.SendCommand( 'GetFolders', null, GetFoldersCallBack ) ; } else { oListManager.ShowUpFolder( '/' ) ; sActiveFolder = folderPath ; oConnector.SendCommand( 'GetFolders', null, GetFoldersCallBack ) ; } } function GetFoldersCallBack( fckXml ) { // Get the current folder path. var oNode = fckXml.SelectSingleNode( 'Connector/CurrentFolder' ) ; var sCurrentFolderPath = oNode.attributes.getNamedItem('path').value ; var oNodes = fckXml.SelectNodes( 'Connector/Folders/Folder' ) ; for ( var i = 0 ; i < oNodes.length ; i++ ) { var sFolderName = oNodes[i].attributes.getNamedItem('name').value ; oListManager.AddItem( sFolderName, sCurrentFolderPath + sFolderName + "/" ) ; } OpenFolder( sActiveFolder ) ; } function SetResourceType( type ) { oConnector.ResourceType = type ; LoadFolders( '/' ) ; } window.onload = function() { oListManager.Init() ; if ( oConnector.ResourceType.length == 0 ) SetResourceType( 'File' ) ; else LoadFolders( '/' ) ; } </script> </head> <body class="FileArea" bottomMargin="10" leftMargin="10" topMargin="10" rightMargin="10"> <table id="tableFiles" cellSpacing="0" cellPadding="0" width="100%" border="0"> <tr id="trUp" style="DISPLAY: none"> <td width="16"><a id="linkUpIcon" href="#"><img alt="" src="images/FolderUp.gif" width="16" height="16" border="0"></a></td> <td nowrap width="100%"> <a id="linkUp" href="#">..</a></td> </tr> </table> </body> </html> --- NEW FILE: frmactualfolder.html --- <!-- * FCKeditor - The text editor for internet * Copyright (C) 2003-2005 Frederico Caldeira Knabben * * Licensed under the terms of the GNU Lesser General Public License: * http://www.opensource.org/licenses/lgpl-license.php * * For further information visit: * http://www.fckeditor.net/ * * File Name: frmactualfolder.html * This page shows the actual folder path. * * File Authors: * Frederico Caldeira Knabben (fr...@fc...) --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <link href="browser.css" type="text/css" rel="stylesheet"> <script type="text/javascript"> function OnResize() { divName.style.width = "1px" ; divName.style.width = tdName.offsetWidth + "px" ; } function SetCurrentFolder( resourceType, folderPath ) { document.getElementById('tdName').innerHTML = folderPath ; } window.onload = function() { window.top.IsLoadedActualFolder = true ; } </script> </head> <body bottomMargin="0" topMargin="0"> <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0"> <tr> <td> <button style="WIDTH: 100%" type="button"> <table cellSpacing="0" cellPadding="0" width="100%" border="0"> <tr> <td><img height="32" alt="" src="images/FolderOpened32.gif" width="32"></td> <td> </td> <td id="tdName" width="100%" nowrap class="ActualFolder">/</td> <td> </td> <td><!--<img height="8" src="images/ButtonArrow.gif" width="12">--></td> <td> </td> </tr> </table> </button> </td> </tr> </table> </body> </html> --- NEW FILE: browser.html --- <!-- * FCKeditor - The text editor for internet * Copyright (C) 2003-2005 Frederico Caldeira Knabben * * Licensed under the terms of the GNU Lesser General Public License: * http://www.opensource.org/licenses/lgpl-license.php * * For further information visit: * http://www.fckeditor.net/ * * File Name: browser.html * This page compose the File Browser dialog frameset. * * File Authors: * Frederico Caldeira Knabben (fr...@fc...) --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>FCKeditor - Resources Browser</title> <link href="browser.css" type="text/css" rel="stylesheet"> </head> <frameset cols="150,*" framespacing="0" bordercolor="#f1f1e3" frameborder="no" class="Frame_none"> <frameset rows="50,*" framespacing="0" class="Frame_r"> <frame src="frmresourcetype.html" scrolling="no" frameborder="no"> <frame name="frmFolders" id="frmFolders" src="frmfolders.html" scrolling="auto" frameborder="no"> </frameset> <frameset rows="50,*,50" framespacing="0" class="Frame_none"> <frame name="frmActualFolder" src="frmactualfolder.html" scrolling="no" frameborder="no"> <frame name="frmResourcesList" id="mainWindow" src="frmresourceslist.html" scrolling="auto" frameborder="no"> <frameset cols="150,*,0" framespacing="0" frameborder="no" class="Frame_t"> <frame name="frmCreateFolder" id="frmCreateFolder" src="frmcreatefolder.html" scrolling="no" frameborder="no"> <frame name="frmUpload" id="frmUpload" src="frmupload.html" scrolling="no" frameborder="no"> <frame name="frmUploadWorker" src="" scrolling="no" frameborder="no"> </frameset> </frameset> </frameset> </html> --- NEW FILE: frmresourcetype.html --- <!-- * FCKeditor - The text editor for internet * Copyright (C) 2003-2005 Frederico Caldeira Knabben * * Licensed under the terms of the GNU Lesser General Public License: * http://www.opensource.org/licenses/lgpl-license.php * * For further information visit: * http://www.fckeditor.net/ * * File Name: frmresourcetype.html * This page shows the list of available resource types. * * File Authors: * Frederico Caldeira Knabben (fr...@fc...) --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> <link href="browser.css" type="text/css" rel="stylesheet"> <script type="text/javascript" src="js/common.js"></script> <script language="javascript"> function SetResourceType( type ) { window.parent.frames["frmFolders"].SetResourceType( type ) ; } var aTypes = [ ['File','File'], ['Image','Image'], ['Flash','Flash'], ['Media','Media'] ] ; window.onload = function() { var bHasType = ( oConnector.ResourceType.length > 0 ) ; cmbTypeObj=document.getElementById("cmbType"); for ( var i = 0 ; i < aTypes.length ; i++ ) { if ( !bHasType || aTypes[i][0] == oConnector.ResourceType ) AddSelectOption( cmbTypeObj, aTypes[i][1], aTypes[i][0] ) ; } } </script> </head> <body bottomMargin="0" topMargin="0"> <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0"> <tr> <td nowrap> Resource Type<BR> <select id="cmbType" style="WIDTH: 100%" onchange="SetResourceType(this.value);"> </select> </td> </tr> </table> </body> </html> --- NEW FILE: frmimageeditor.html --- <!-- * FCKeditor - The text editor for internet * Copyright (C) 2003-2005 Frederico Caldeira Knabben * * Licensed under the terms of the GNU Lesser General Public License: * http://www.opensource.org/licenses/lgpl-license.php * * For further information visit: * http://www.fckeditor.net/ * * File Name: frmimageeditor.html * This page facilitates the editing of images. * * File Authors: * Grant French (gr...@mc...) --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <link href="browser.css" type="text/css" rel="stylesheet"> <script type="text/javascript" src="js/fckxml.js"></script> <script type="text/javascript" src="js/common.js"></script> <script type="text/javascript" src="js/wz_jsgraphics.js"></script> <script type="text/javascript" src="js/EditorContent.js"></script> <script language="javascript" type="text/javascript"> <!-- oConnector.CurrentFolder = GetMyUrlParam( 'CurrentFolder' ) ; var fileName=GetMyUrlParam( 'FileName' ) ; var fileURL=unescape( GetMyUrlParam( 'FileURL' ) ); var cursor_X, cursor_Y; var imageEditorLoaded=false; var bottomFrame1, bottomFrame2, bottomFrame3; /* var t_cx, t_cy, t_cw, t_ch; var m_sx, m_sy, m_w, m_h, m_a, m_d; var s_sw, s_sh; var r_ra; var constrained; var pattern = "images/2x2.gif";*/ function RenameFile( fileName, fileUrl ) { var promptMsg='Please enter the new name for ' + fileName + ':'; var newName=prompt(promptMsg,fileName); if ((newName!=null)&&(newName!='')&&(newName!=fileName)) { oConnector.SendCommand( 'RenameFile', "FileName=" + escape( fileName ) + "&NewName=" + escape( newName ), RenameFileCallBack ) ; } } function RenameFolder( folderName ) { var promptMsg='Please enter the new name for ' + folderName + ':'; var newName=prompt(promptMsg,folderName); if ((newName!=null)&&(newName!='')&&(newName!=folderName)) { oConnector.SendCommand( 'RenameFolder', "FolderName=" + escape( folderName ) + "&NewName=" + escape ( newName ), RenameFolderCallBack ) ; } } function LoadResources( resourceType, folderPath ) { oListManager.Clear() ; oConnector.ResourceType = resourceType ; oConnector.CurrentFolder = folderPath oConnector.SendCommand( 'GetFoldersAndFiles', null, GetFoldersAndFilesCallBack ) ; } function Refresh() { LoadResources( oConnector.ResourceType, oConnector.CurrentFolder ) ; } function RenameFolderCallBack ( fckXml ) { var oNodes = fckXml.SelectNodes( 'Connector/Error' ); if (oNodes.length>0) { var errNo = parseInt(oNodes[0].attributes.getNamedItem('number').value) ; switch (errNo) { case 0 : break; case 602 : alert('Failed to rename folder.'); break; default: alert('Invalid XML response from connector..'); } } else { alert('Invalid XML response from connector.'); } Refresh(); } function drawFramework() { bottomFrame1 = top.frames['frmCreateFolder'].document; bottomFrame2 = top.frames['frmUpload'].document; bottomFrame3 = top.frames['frmFolders'].document; bottomFrame1.body.innerHTML='<table style="border-width: 0px; border-style: none;" align="center" cellpadding="2" id="toolbar1"><table>'; bottomFrame2.body.innerHTML='<table style="height: 100%; border-width: 0px; border-style: none;" cellpadding="4"><tr id="toolbar2"></tr><table>'; bottomFrame3.body.innerHTML='<table style="border-width: 0px; border-style: none;" align="center" cellpadding="8" id="toolbar3"><table>'; var toolbar1 = bottomFrame1.getElementById('toolbar1'); var toolbar2 = bottomFrame2.getElementById('toolbar2'); var toolbar3 = bottomFrame3.getElementById('toolbar3'); /*#######################*/ /* START OF MAIN TOOLBAR */ /*#######################*/ /* --- Save Image --- */ var row = toolbar3.insertRow(-1); var oCell = row.insertCell(-1); oCell.innerHTML = '<a href="" title="Save Image">' + '<img src="images/toolbar/save.gif" style="width: 22px; height: 22px;" /><br />' + 'Save' + '</a>'; oCell.noWrap = true; oCell.align = 'center'; /* --- Close Image --- */ var row = toolbar3.insertRow(-1); var oCell = row.insertCell(-1); oCell.innerHTML = '<a href="#" title="Close Image" onclick="window.top.location.reload();">' + '<img src="images/toolbar/close.gif" style="width: 22px; height: 22px;" /><br />' + 'Close' + '</a>'; oCell.noWrap = true; oCell.align = 'center'; /* --- Seperator --- */ var row = toolbar3.insertRow(-1); var oCell = row.insertCell(-1); oCell.innerHTML = '<hr /><br />'; oCell.noWrap = true; oCell.align = 'center'; /* --- Resize Image --- */ var row = toolbar3.insertRow(-1); var oCell = row.insertCell(-1); oCell.innerHTML = '<a href="javascript: top.frames[\'frmResourcesList\'].setMode(\'resize\');" class="tb_item" id="tb_scale" title="Resize Image">' + '<img src="images/toolbar/resize.gif" style="width: 22px; height: 22px;" /><br />' + 'Resize' + '</a>'; oCell.noWrap = true; oCell.align = 'center'; /* --- Crop Image --- */ var row = toolbar3.insertRow(-1); var oCell = row.insertCell(-1); oCell.innerHTML = '<a href="javascript: top.frames[\'frmResourcesList\'].setMode(\'crop\');" class="tb_item" id="tb_crop" title="Crop Image">' + '<img src="images/toolbar/crop.gif" style="width: 22px; height: 22px;" /><br />' + 'Crop' + '</a>'; oCell.noWrap = true; oCell.align = 'center'; /* --- Rotate Image --- */ var row = toolbar3.insertRow(-1); var oCell = row.insertCell(-1); oCell.innerHTML = '<a href="javascript: top.frames[\'frmResourcesList\'].setMode(\'rotate\');" class="tb_item" id="tb_rotate" title="Rotate Image">' + '<img src="images/toolbar/rotate.gif" style="width: 22px; height: 22px;" /><br />' + 'Rotate' + '</a>'; oCell.noWrap = true; oCell.align = 'center'; /* --- Flip Image --- */ var row = toolbar3.insertRow(-1); var oCell = row.insertCell(-1); oCell.innerHTML = '<a href="javascript: top.frames[\'frmResourcesList\'].setMode(\'flip\');" class="tb_item" id="tb_flip" title="Flip Image">' + '<img src="images/toolbar/flip.gif" style="width: 22px; height: 22px;" /><br />' + 'Flip' + '</a>'; oCell.noWrap = true; oCell.align = 'center'; /*###################*/ /* START OF INFO BAR */ /*###################*/ /* --- X Position --- */ var row = toolbar1.insertRow(-1); var oCell = row.insertCell(-1); oCell.innerHTML = '<div style="display: inline;">X: <div style="display: inline;" id="cursor_x">0</div>px</div>'; oCell.noWrap = true; oCell.align = 'center'; cursor_X=bottomFrame1.getElementById('cursor_x'); /* --- Y Posision --- */ var row = toolbar1.insertRow(-1); var oCell = row.insertCell(-1); oCell.innerHTML = '<div style="display: inline;">Y: <div style="display: inline;" id="cursor_y">0</div>px</div>'; oCell.noWrap = true; oCell.align = 'center'; cursor_Y=bottomFrame1.getElementById('cursor_y'); /*#####################*/ /* START OF MANUAL BAR */ /*#####################*/ /* --- X Position --- */ //var row = toolbar2.insertRow(-1); var oCell = toolbar2.insertCell(-1); oCell.innerHTML = '<input type="text" id="cx" />' + '<input type="text" id="cy" />'; oCell.noWrap = true; oCell.align = 'center'; cursor_X=bottomFrame1.getElementById('cursor_x'); } window.onload = function() { drawFramework(); document.getElementById('theImage').src=fileURL; jg_doc = new jsGraphics("imgCanvas"); // draw directly into document jg_doc.setColor("#000000"); // black // top.frames['frmResourcesList'].setMode('scale'); imageEditorLoaded=true; // top.frames['frmResourcesList'].setMode('scale'); } function updateXY(eventObject) { if (imageEditorLoaded) { cursor_X.innerHTML = eventObject.pageX; cursor_Y.innerHTML = eventObject.pageY; } } //--> </script> <style type="text/css"> body { margin: 0; padding: 0; background-color: #eee; } table { width: 100%; } table td { text-align: center; } .crop{cursor:crosshair;} .selection { border: dotted 1px #000000; position:absolute; width: 0px; height: 1px; z-index:5; } .selectionWhite{ border: dotted 1px #FFFFFF; position:absolute; width: 0px; height: 1px; z-index:5; } .handleBox{ z-index:105; } .error { font-size:large; font-weight:bold; color:#c00; font-family: Helvetica, sans-serif; } </style> </head> <body class="FileArea" bottomMargin="10" leftMargin="10" topMargin="10" rightMargin="10"> <div id="status"></div> <div id="ant" class="selection" style="visibility:hidden"><img src="img/spacer.gif" width="0" height="0" border="0" alt="" id="cropContent"></div> <br /><table style="margin-left: auto; margin-right: auto;"> <tr> <td> <span id="imgCanvas" class="crop"><img src="" alt="" id="theImage" name="theImage"></span> </td> </tr> </table> </body> </html> --- NEW FILE: frmresourceslist.html --- <!-- * FCKeditor - The text editor for internet * Copyright (C) 2003-2005 Frederico Caldeira Knabben * * Licensed under the terms of the GNU Lesser General Public License: * http://www.opensource.org/licenses/lgpl-license.php * * For further information visit: * http://www.fckeditor.net/ * * File Name: frmresourceslist.html * This page shows all resources available in a folder in the File Browser. * * File Authors: * Frederico Caldeira Knabben (fr...@fc...) * Grant French (gr...@mc...) --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <link href="browser.css" type="text/css" rel="stylesheet"> <script type="text/javascript" src="js/fckxml.js"></script> <script type="text/javascript" src="js/common.js"></script> <script language="javascript"> var oListManager = new Object() ; oListManager.Init = function() { this.Table = document.getElementById('tableFiles') ; } oListManager.Clear = function() { // Remove all other rows available. while ( this.Table.rows.length > 0 ) this.Table.deleteRow(0) ; } oListManager.AddFolder = function( folderName, folderPath ) { var docWidth=document.body.clientWidth; if (docWidth==null) docWidth=document.body.scrollWidth; var maxCols=docWidth/120; maxCols--; var rows=this.Table.getElementsByTagName('tr'); if (rows.length!=0) { var lastRow = rows[(rows.length-1)]; var cells = lastRow.getElementsByTagName('td'); var lastRow_Cols = cells.length; if (lastRow_Cols>=maxCols) { lastRow = this.Table.insertRow(-1); lastRow.className="Frame_tb"; } } else { var lastRow = this.Table.insertRow(-1); lastRow.className="Frame_tb"; } // Build the link to view the folder. var sLink = '<a href="#" onclick="OpenFolder(\'' + escape(folderPath) + '\');return false;">' ; var dLink = '<a href="#" onclick="DeleteFolder(\'' + escape(folderName) + '\');return false;">' ; var rLink = '<a href="#" onclick="RenameFolder(\'' + escape(folderName) + '\');return false;">' ; // Add the file icon cell. var oCell = lastRow.insertCell(-1) ; oCell.vAlign="top"; oCell.width = 96 ; oCell.innerHTML = sLink + '<img alt="' + folderName + '" src="images/Folder96.jpg" width="96" height="96" border="0"><br />' + folderName + '</a><br />'; oCell.innerHTML += dLink + '<img border="0" src="images/delete.gif" width="16" height="16" alt="Delete Folder" title="Delete Folder"></a> '; oCell.innerHTML += rLink + '<img border="0" src="images/edit.gif" width="16" height="16" alt="Rename Folder" title="Rename Folder"></a>' ; oCell.noWrap = true ; oCell.align = 'center' ; } oListManager.AddFile = function ( fileName, fileUrl, fileSize, imageEditable ) { var docWidth=document.body.clientWidth; if (docWidth==null) docWidth=document.body.scrollWidth; var maxCols=docWidth/120; maxCols--; var rows=this.Table.getElementsByTagName('tr'); if (rows.length!=0) { var lastRow = rows[(rows.length-1)]; var cells = lastRow.getElementsByTagName('td'); var lastRow_Cols = cells.length; if (lastRow_Cols>=maxCols) { var lastRow = this.Table.insertRow(-1); lastRow.className="Frame_tb"; } } else { var lastRow = this.Table.insertRow(-1); lastRow.className="Frame_tb"; } // Build the link to view the file. var sLink = '<a href="#" title="Size: ' + fileSize + 'kb" onclick="OpenFile(\'' + escape(fileUrl) + '\');return false;">' ; var dLink = '<a href="#" title="Delete file" onclick="DeleteFile(\'' + escape(fileName) + '\');return false;">' ; var eLink = '<a href="#" title="Rename file" onclick="RenameFile(\'' + escape(fileName) + '\');return false;">' ; var eImageLink = '<a href="#" title="Edit Image" onclick="EditImage(\'' + escape(fileName) + '\',\'' + escape(fileUrl) + '\');return false;">' ; // Add the file icon cell. var oCell = lastRow.insertCell(-1) ; oCell.vAlign="top"; oCell.width = 96 ; oCell.innerHTML = sLink + '<img alt="' + fileName + '" src="' + oConnector.ConnectorUrl + '?Command=Thumbnail&Type=' + oConnector.ResourceType + '&CurrentFolder=' + oConnector.CurrentFolder + '&FileName=' + escape(fileName) + '&ExtraParams=' + oConnector.ExtraParams + '" width="96" height="96" border="0"><br />' + fileName + '</a><br />'; oCell.innerHTML += dLink + '<img border="0" src="images/delete.gif" width="16" height="16" alt="Delete File" title="Delete File"></a> '; oCell.innerHTML += eLink + '<img border="0" src="images/edit.gif" width="16" height="16" alt="Edit/Rename File" title="Rename File"></a>' ; if (imageEditable==1) { oCell.innerHTML += eImageLink + '<img border="0" src="images/editImage.gif" width="16" height="16" alt="Edit Image" title="Edit Image"></a>' ; } oCell.noWrap = true ; oCell.align = 'center' ; } oListManager.PackRow = function () { var docWidth=document.body.clientWidth; if (docWidth==null) docWidth=document.body.scrollWidth; var maxCols=docWidth/120; maxCols--; var rows=this.Table.getElementsByTagName('tr'); if (rows.length!=0) { var lastRow = rows[(rows.length-1)]; var cells = lastRow.getElementsByTagName('td'); var lastRow_Cols = cells.length; if (lastRow_Cols<maxCols) { for (i=lastRow_Cols;i<maxCols;i++) { var oCell = lastRow.insertCell(-1); oCell.width=96; oCell.innerHTML = ' '; oCell.noWrap=true; oCell.align='center'; } } } } function OpenFolder( folderPath ) { // Load the resources list for this folder. window.parent.frames['frmFolders'].LoadFolders( folderPath ) ; } function OpenFile( fileUrl ) { fileUrl=unescape(fileUrl); window.top.opener.SetUrl( fileUrl ) ; window.top.close() ; window.top.opener.focus() ; } function DeleteFile( fileName, fileUrl ) { if (confirm('Are you sure you wish to delete ' + unescape(fileName) + '?')) { oConnector.SendCommand( 'DeleteFile', "FileName=" + fileName, DeleteFileCallBack ) ; } } function DeleteFolder( folderName ) { if (confirm('Are you sure you wish to delete ' + unescape(folderName) + ' and all files in it?')) { oConnector.SendCommand( 'DeleteFolder', "FolderName=" + folderName, DeleteFolderCallBack ) ; } } function RenameFile( fileName, fileUrl ) { var promptMsg='Please enter the new name for ' + unescape(fileName) + ':'; var newName=prompt(promptMsg,unescape(fileName)); if ((newName!=null)&&(newName!='')&&(newName!=fileName)) { oConnector.SendCommand( 'RenameFile', "FileName=" + fileName + "&NewName=" + escape( newName ), RenameFileCallBack ) ; } } function EditImage( fileName, fileUrl ) { window.location.href="frmimageeditor.html?Connector=" + oConnector.ConnectorUrl + "&Type=" + oConnector.ResourceType + "&CurrentFolder=" + oConnector.CurrentFolder + "&FileName=" + fileName + "&FileURL=" + fileUrl; } function RenameFolder( folderName ) { var promptMsg='Please enter the new name for ' + unescape(folderName) + ':'; var newName=prompt(promptMsg,unescape(folderName)); if ((newName!=null)&&(newName!='')&&(newName!=unescape(folderName))) { oConnector.SendCommand( 'RenameFolder', "FolderName=" + folderName + "&NewName=" + escape ( newName ), RenameFolderCallBack ) ; } } function LoadResources( resourceType, folderPath ) { oListManager.Clear() ; oConnector.ResourceType = resourceType ; oConnector.CurrentFolder = folderPath oConnector.SendCommand( 'GetFoldersAndFiles', null, GetFoldersAndFilesCallBack ) ; } function Refresh() { LoadResources( oConnector.ResourceType, oConnector.CurrentFolder ) ; } function GetFoldersAndFilesCallBack( fckXml ) { // Get the current folder path. var oNode = fckXml.SelectSingleNode( 'Connector/CurrentFolder' ) ; var sCurrentFolderPath = oNode.attributes.getNamedItem('path').value ; var sCurrentFolderUrl = oNode.attributes.getNamedItem('url').value ; // Add the Folders. var oNodes = fckXml.SelectNodes( 'Connector/Folders/Folder' ) ; if (oNodes!=null) { for ( var i = 0 ; i < oNodes.length ; i++ ) { var sFolderName = oNodes[i].attributes.getNamedItem('name').value ; oListManager.AddFolder( sFolderName, sCurrentFolderPath + sFolderName + "/" ) ; } } // Add the Files. var oNodes = fckXml.SelectNodes( 'Connector/Files/File' ) ; if (oNodes!=null) { for ( var i = 0 ; i < oNodes.length ; i++ ) { var sFileName = oNodes[i].attributes.getNamedItem('name').value ; var sFileSize = oNodes[i].attributes.getNamedItem('size').value ; var iEditable = oNodes[i].attributes.getNamedItem('editable') ; if (iEditable!=null) { iEditable = iEditable.value; } else { iEditable = 0; } oListManager.AddFile( sFileName, sCurrentFolderUrl + sFileName, sFileSize, iEditable ) ; } } oListManager.PackRow(); } function DeleteFileCallBack ( fckXml ) { var oNodes = fckXml.SelectNodes( 'Connector/Error' ); if (oNodes!=null && oNodes.length>0) { var errNo = parseInt(oNodes[0].attributes.getNamedItem('number').value) ; switch (errNo) { case 0 : break; case 302 : alert('Failed to delete file.'); break; default: alert('DFi: Invalid XML response from connector..'); } } else { alert('DFi: Invalid XML response from connector.'); } Refresh(); } function DeleteFolderCallBack ( fckXml ) { var oNodes = fckXml.SelectNodes( 'Connector/Error' ); if (oNodes!=null && oNodes.length>0) { var errNo = parseInt(oNodes[0].attributes.getNamedItem('number').value) ; switch (errNo) { case 0 : break; case 402 : alert('Failed to delete folder.'); break; default: alert('DFo: Invalid XML response from connector..'); } } else { alert('DFo: Invalid XML response from connector.'); } Refresh(); } function RenameFileCallBack ( fckXml ) { var oNodes = fckXml.SelectNodes( 'Connector/Error' ); if (oNodes!=null && oNodes.length>0) { var errNo = parseInt(oNodes[0].attributes.getNamedItem('number').value) ; switch (errNo) { case 0 : break; case 502 : alert('Failed to rename file.'); break; default: alert('RFi: Invalid XML response from connector..'); } } else { alert('RFi: Invalid XML response from connector.'); } Refresh(); } function RenameFolderCallBack ( fckXml ) { var oNodes = fckXml.SelectNodes( 'Connector/Error' ); if (oNodes!=null && oNodes.length>0) { var errNo = parseInt(oNodes[0].attributes.getNamedItem('number').value) ; switch (errNo) { case 0 : break; case 602 : alert('Failed to rename folder.'); break; default: alert('RFo: Invalid XML response from connector..'); } } else { alert('RFo: Invalid XML response from connector.'); } Refresh(); } window.onload = function() { oListManager.Init() ; window.top.IsLoadedResourcesList = true ; } </script> </head> <body class="FileArea" bottomMargin="10" leftMargin="10" topMargin="10" rightMargin="10"> <table id="tableFiles" cellSpacing="4" cellPadding="5" width="100%" border="0"> </table> </body> </html> --- NEW FILE: frmcreatefolder.html --- <!-- * FCKeditor - The text editor for internet * Copyright (C) 2003-2005 Frederico Caldeira Knabben * * Licensed under the terms of the GNU Lesser General Public License: * http://www.opensource.org/licenses/lgpl-license.php * * For further information visit: * http://www.fckeditor.net/ * * File Name: frmcreatefolder.html * Page used to create new folders in the current folder. * * File Authors: * Frederico Caldeira Knabben (fr...@fc...) --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link href="browser.css" type="text/css" rel="stylesheet"> <script type="text/javascript" src="js/fckxml.js"></script> <script type="text/javascript" src="js/common.js"></script> <script language="javascript"> function SetCurrentFolder( resourceType, folderPath ) { oConnector.ResourceType = resourceType ; oConnector.CurrentFolder = folderPath } function CreateFolder() { var sFolderName ; while ( true ) { sFolderName = prompt( 'Type the name of the new folder:', '' ) ; if ( sFolderName == null ) return ; else if ( sFolderName.length == 0 ) alert( 'Please type the folder name' ) ; else break ; } oConnector.SendCommand( 'CreateFolder', 'NewFolderName=' + escape( sFolderName) , CreateFolderCallBack ) ; } function CreateFolderCallBack( fckXml ) { // Get the current folder path. var oNode = fckXml.SelectSingleNode( 'Connector/Error' ) ; var iErrorNumber = parseInt( oNode.attributes.getNamedItem('number').value ) ; switch ( iErrorNumber ) { case 0 : window.parent.frames['frmResourcesList'].Refresh() ; break ; case 101 : alert( 'Folder already exists' ) ; break ; case 102 : alert( 'Invalid folder name' ) ; break ; case 103 : alert( 'You have no permissions to create the folder' ) ; break ; case 110 : alert( 'Unknown error creating folder' ) ; break ; default : alert( 'Error creating folder. Error number: ' + iErrorNumber ) ; break ; } } window.onload = function() { window.top.IsLoadedCreateFolder = true ; } </script> </head> <body bottomMargin="0" topMargin="0"> <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0"> <tr> <td> <button type="button" style="WIDTH: 100%" onclick="CreateFolder();"> <table cellSpacing="0" cellPadding="0" border="0"> <tr> <td><img height="16" alt="" src="images/Folder.gif" width="16"></td> <td> </td> <td nowrap>Create New Folder</td> </tr> </table> </button> </td> </tr> </table> </body> </html> --- NEW FILE: browser.css --- /* * FCKeditor - The text editor for internet * Copyright (C) 2003-2005 Frederico Caldeira Knabben * * Licensed under the terms of the GNU Lesser General Public License: * http://www.opensource.org/licenses/lgpl-license.php * * For further information visit: * http://www.fckeditor.net/ * * File Name: browser.css * CSS styles used by all pages that compose the File Browser. * * File Authors: * Frederico Caldeira Knabben (fr...@fc...) */ body { background-color: #e3e9f1; } form { margin: 0px 0px 0px 0px ; padding: 0px 0px 0px 0px ; } a, :link, :active, :visited { color: #000000; text-decoration: none; } :hover { color: #0000fa; } a img { border-width: 0px; border-style: none; } frame { background-color: #e3e9f1; border-color: #000000; border-collapse: collapse; } frameset { background-color: #e3e9f1; border-color: #000000; border-collapse: collapse; } .progress_hollow { background-color: transparent; } .progress_filled { background-color: #8fa7c7; } .progress_bar { background-color: #F0F7FF; border-width: 1px; border-color: #000000; border-style: solid; } .Frame_none { border-width: 0px; border-style: none; } .Frame_t { border-right: 0px none; border-top: 1px solid; border-left: 0px none; border-bottom: 0px none; } .Frame_tr { border-right: 1px solid; border-top: 1px solid; border-left: 0px none; border-bottom: 0px none; } .Frame_tl { border-right: 0px none; border-top: 1px solid; border-left: 1px solid; border-bottom: 0px none; } .Frame_r { border-right: 1px solid; border-top: 0px none; border-left: 0px none; border-bottom: 0px none; } .Frame_l { border-right: 0px none; border-top: 0px none; border-left: 1px solid; border-bottom: 0px none; } .Frame_rl { border-right: 1px solid; border-top: 0px none; border-left: 1px solid; border-bottom: 0px none; } .Frame_b { border-right: 0px none; border-top: 0px none; border-left: 0px none; border-bottom: 1px solid; } .Frame_br { border-right: 1px solid; border-top: 0px none; border-left: 0px none; border-bottom: 1px solid; } .Frame_bl { border-right: 0px none; border-top: 0px none; border-left: 1px solid; border-bottom: 1px solid; } .Frame_tb { border-right: 0px none; border-top: 1px solid; border-left: 0px none; border-bottom: 1px solid; } .Frame_all { border-right: 1px solid; border-top: 1px solid; border-left: 1px solid; border-bottom: 1px solid; } body.FileArea { background-color: #ffffff; } body, td, input, select { font-size: 11px; font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana; } .ActualFolder { font-weight: bold; font-size: 14px; } .PopupButtons { border-top: #8fa7c7 1px solid; background-color: #ffffff; padding: 7px 10px 7px 10px; } .Button, button { border-right: #737357 1px solid; border-top: #737357 1px solid; border-left: #737357 1px solid; color: #ffffff; border-bottom: #737357 1px solid; background-color: #8fa7c7; } .FolderListCurrentFolder img { background-image: url(images/FolderOpened.gif); } .FolderListFolder img { background-image: url(images/Folder.gif); } --- NEW FILE: frmupload.html --- <!-- * FCKeditor - The text editor for internet * Copyright (C) 2003-2005 Frederico Caldeira Knabben * * Licensed under the terms of the GNU Lesser General Public License: * http://www.opensource.org/licenses/lgpl-license.php * * For further information visit: * http://www.fckeditor.net/ * * File Name: frmupload.html * Page used to upload new files in the current folder. * * File Authors: * Frederico Caldeira Knabben (fr...@fc...) * Grant French (gr...@mc...) --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <link href="browser.css" type="text/css" rel="stylesheet" /> <script type="text/javascript" src="js/fckxml.js"></script> <script type="text/javascript" src="js/common.js"></script> <script language="javascript"> var randomnumber=Math.floor(Math.random()*65535); var refreshURL=''; var uploading=false; function SetCurrentFolder( resourceType, folderPath ) { var sUrl = oConnector.UploadHandler +'?uploadID='+randomnumber+'&Connector='+escape(oConnector.ConnectorUrl)+'&Command=FileUpload' ; sUrl += '&Type=' + resourceType ; sUrl += '&CurrentFolder=' + folderPath ; sUrl += '&ExtraParams=' + oConnector.ExtraParams ; document.getElementById('frmUpload').action = sUrl ; oConnector.ResourceType = resourceType ; oConnector.CurrentFolder = folderPath ; } function OnSubmit() { if ( document.getElementById('NewFile').value.length == 0 ) { alert( 'Please select a file from your computer' ) ; return false ; } // Set the interface elements. document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder (Upload in progress, please wait... 0%)' ; document.getElementById('filebox').style.display="none"; resetProgressBar(); document.getElementById('progressbox').style.display="inline"; document.getElementById('btnUpload').disabled = true ; uploading=true; setTimeout("GetUploadProgress()",2000); return true ; } function OnUploadCompleted( errorNumber, fileName ) { uploading=false; // Reset the Upload Worker Frame. window.parent.frames['frmUploadWorker'].location = '' ; // Reset the upload form. //Sometimes causes IE to get itself in a mess (wont allow second upload) //document.getElementById('NewFile').reset() ; // Reset the interface elements. document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder' ; document.getElementById('btnUpload').disabled = false ; var randomnumber=Math.floor(Math.random()*65535); SetCurrentFolder(oConnector.ResourceType,oConnector.CurrentFolder); switch ( errorNumber ) { case 0 : window.parent.frames['frmResourcesList'].Refresh() ; document.getElementById('filebox').style.display="inline"; document.getElementById('progressbox').style.display="none"; break ; case 201 : window.parent.frames['frmResourcesList'].Refresh() ; document.getElementById('filebox').style.display="inline"; document.getElementById('progressbox').style.display="none"; alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ; break ; case 202 : document.getElementById('filebox').style.display="inline"; document.getElementById('progressbox').style.display="none"; alert( 'Error, "'+fileName+'"' ) ; break ; default : document.getElementById('filebox').style.display="inline"; document.getElementById('progressbox').style.display="none"; alert( 'Error on file upload. Error number: ' + errorNumber ) ; break ; } } function resetProgressBar() { oProgressBar=document.getElementById('progress'); var rows=oProgressBar.getElementsByTagName('tr'); var row=rows[0]; var cols=row.getElementsByTagName('td'); // var label=document.getElementById("progress_label"); // label.innerHTML="0%" for (i=0;i<(cols.length-1);i++) { cols[i].className="progress_hollow"; } } warned=false; function GetUploadProgressCallback( fckXml ) { // Get the current folder path. if (!uploading) return false; var oNode = fckXml.SelectSingleNode( 'Connector/CurrentFolder' ) ; if (oNode==null) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return false; } if ((oNode.attributes.getNamedItem('path')==null)||(oNode.attributes.getNamedItem('url')==null)) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return; } var sCurrentFolderPath = oNode.attributes.getNamedItem('path').value ; var sCurrentFolderUrl = oNode.attributes.getNamedItem('url').value ; // Add the Folders. var oNode = fckXml.SelectSingleNode( 'Connector/Progress' ) ; if (oNode==null) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return false; } if ((oNode.attributes.getNamedItem('max')==null)||(oNode.attributes.getNamedItem('value')==null)) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return; } var iMax = oNode.attributes.getNamedItem('max').value ; var iValue = oNode.attributes.getNamedItem('value').value ; var oNode = fckXml.SelectSingleNode( 'Connector/RefreshURL' ) ; if (oNode==null) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return false; } if ((oNode.attributes.getNamedItem('url')==null)) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return; } refreshURL = oNode.attributes.getNamedItem('url').value ; var oProgressBar=document.getElementById('progress'); //var label=document.getElementById("progress_label"); var rows=oProgressBar.getElementsByTagName('tr'); var row=rows[0]; var cols=row.getElementsByTagName('td'); var percentage=Math.floor((iValue/iMax)*100); document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder (Upload in progress, please wait.. ' + percentage + '% )' ; //label.innerHTML=percentage+"%" for (i=0;i<(cols.length-1);i++) { if (((i+1)*(100/cols.length))<=percentage) { cols[i].className="progress_filled"; } else { cols[i].className="progress_hollow"; } } if (uploading) getProgressTimer=setTimeout("GetUploadProgress()",1000); } function GetUploadProgress() { if (uploading) oConnector.SendCommand( 'GetUploadProgress', 'uploadID='+randomnumber+'&refreshURL='+escape(refreshURL), GetUploadProgressCallback ) ; } window.onload = function() { window.top.IsLoadedUpload = true ; } </script> </head> <body bottomMargin="0" topMargin="0"> <form id="frmUpload" action="" target="frmUploadWorker" method="post" enctype="multipart/form-data" onsubmit="return OnSubmit();"> <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0"> <tr> <td nowrap> <span id="eUploadMessage">Upload a new file in this folder</span><br> <table cellSpacing="0" cellPadding="0" width="100%" border="0"> <tr> <td width="100%"> <div id="filebox"><input id="NewFile" name="NewFile" style="width: 100%; background-color: transparent;" type="file"></div> <div id="progressbox" style="display: none"> <table id="progress" style="width: 100%" class="progress_bar"> <tr> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> <td class="progress_hollow"> </td> </tr> </table> <!--<div id="progress_label"></div>--> </div> </td> <td nowrap> <input id="btnUpload" type="submit" value="Upload"></td> </tr> </table> </td> </tr> </table> </form> </body> </html> |