source: branches/1.2/workflow/js/fckeditor/editor/filemanager/browser/default/frmfolders.html @ 1349

Revision 1349, 5.3 KB checked in by niltonneto, 15 years ago (diff)

Ticket #561 - Inclusão do módulo Workflow faltante nessa versão.

  • Property svn:executable set to *
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<!--
3 * FCKeditor - The text editor for Internet - http://www.fckeditor.net
4 * Copyright (C) 2003-2007 Frederico Caldeira Knabben
5 *
6 * == BEGIN LICENSE ==
7 *
8 * Licensed under the terms of any of the following licenses at your
9 * choice:
10 *
11 *  - GNU General Public License Version 2 or later (the "GPL")
12 *    http://www.gnu.org/licenses/gpl.html
13 *
14 *  - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
15 *    http://www.gnu.org/licenses/lgpl.html
16 *
17 *  - Mozilla Public License Version 1.1 or later (the "MPL")
18 *    http://www.mozilla.org/MPL/MPL-1.1.html
19 *
20 * == END LICENSE ==
21 *
22 * This page shows the list of folders available in the parent folder
23 * of the current folder.
24-->
25<html>
26        <head>
27                <link href="browser.css" type="text/css" rel="stylesheet">
28                <script type="text/javascript" src="js/common.js"></script>
29                <script language="javascript">
30
31var sActiveFolder ;
32
33var bIsLoaded = false ;
34var iIntervalId ;
35
36var oListManager = new Object() ;
37
38oListManager.Init = function()
39{
40        this.Table = document.getElementById('tableFiles') ;
41        this.UpRow = document.getElementById('trUp') ;
42
43        this.TableRows = new Object() ;
44}
45
46oListManager.Clear = function()
47{
48        // Remove all other rows available.
49        while ( this.Table.rows.length > 1 )
50                this.Table.deleteRow(1) ;
51
52        // Reset the TableRows collection.
53        this.TableRows = new Object() ;
54}
55
56oListManager.AddItem = function( folderName, folderPath )
57{
58        // Create the new row.
59        var oRow = this.Table.insertRow(-1) ;
60        oRow.className = 'FolderListFolder' ;
61
62        // Build the link to view the folder.
63        var sLink = '<a href="#" onclick="OpenFolder(\'' + folderPath + '\');return false;">' ;
64
65        // Add the folder icon cell.
66        var oCell = oRow.insertCell(-1) ;
67        oCell.width = 16 ;
68        oCell.innerHTML = sLink + '<img alt="" src="images/spacer.gif" width="16" height="16" border="0"></a>' ;
69
70        // Add the folder name cell.
71        oCell = oRow.insertCell(-1) ;
72        oCell.noWrap = true ;
73        oCell.innerHTML = '&nbsp;' + sLink + folderName + '</a>' ;
74
75        this.TableRows[ folderPath ] = oRow ;
76}
77
78oListManager.ShowUpFolder = function( upFolderPath )
79{
80        this.UpRow.style.display = ( upFolderPath != null ? '' : 'none' ) ;
81
82        if ( upFolderPath != null )
83        {
84                document.getElementById('linkUpIcon').onclick = document.getElementById('linkUp').onclick = function()
85                {
86                        LoadFolders( upFolderPath ) ;
87                        return false ;
88                }
89        }
90}
91
92function CheckLoaded()
93{
94        if ( window.top.IsLoadedActualFolder
95                && window.top.IsLoadedCreateFolder
96                && window.top.IsLoadedUpload
97                && window.top.IsLoadedResourcesList )
98        {
99                window.clearInterval( iIntervalId ) ;
100                bIsLoaded = true ;
101                OpenFolder( sActiveFolder ) ;
102        }
103}
104
105function OpenFolder( folderPath )
106{
107        sActiveFolder = folderPath ;
108
109        if ( ! bIsLoaded )
110        {
111                if ( ! iIntervalId )
112                        iIntervalId = window.setInterval( CheckLoaded, 100 ) ;
113                return ;
114        }
115
116        // Change the style for the select row (to show the opened folder).
117        for ( var sFolderPath in oListManager.TableRows )
118        {
119                oListManager.TableRows[ sFolderPath ].className =
120                        ( sFolderPath == folderPath ? 'FolderListCurrentFolder' : 'FolderListFolder' ) ;
121        }
122
123        // Set the current folder in all frames.
124        window.parent.frames['frmActualFolder'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ;
125        window.parent.frames['frmCreateFolder'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ;
126        window.parent.frames['frmUpload'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ;
127
128        // Load the resources list for this folder.
129        window.parent.frames['frmResourcesList'].LoadResources( oConnector.ResourceType, folderPath ) ;
130}
131
132function LoadFolders( folderPath )
133{
134        // Clear the folders list.
135        oListManager.Clear() ;
136
137        // Get the parent folder path.
138        var sParentFolderPath ;
139        if ( folderPath != '/' )
140                sParentFolderPath = folderPath.substring( 0, folderPath.lastIndexOf( '/', folderPath.length - 2 ) + 1 ) ;
141
142        // Show/Hide the Up Folder.
143        oListManager.ShowUpFolder( sParentFolderPath ) ;
144
145        if ( folderPath != '/' )
146        {
147                sActiveFolder = folderPath ;
148                oConnector.CurrentFolder = sParentFolderPath ;
149                oConnector.SendCommand( 'GetFolders', null, GetFoldersCallBack ) ;
150        }
151        else
152                OpenFolder( '/' ) ;
153}
154
155function GetFoldersCallBack( fckXml )
156{
157        if ( oConnector.CheckError( fckXml ) != 0 )
158                return ;
159
160        // Get the current folder path.
161        var oNode = fckXml.SelectSingleNode( 'Connector/CurrentFolder' ) ;
162        var sCurrentFolderPath = oNode.attributes.getNamedItem('path').value ;
163
164        var oNodes = fckXml.SelectNodes( 'Connector/Folders/Folder' ) ;
165
166        for ( var i = 0 ; i < oNodes.length ; i++ )
167        {
168                var sFolderName = oNodes[i].attributes.getNamedItem('name').value ;
169                oListManager.AddItem( sFolderName, sCurrentFolderPath + sFolderName + "/" ) ;
170        }
171
172        OpenFolder( sActiveFolder ) ;
173}
174
175function SetResourceType( type )
176{
177        oConnector.ResourceType = type ;
178        LoadFolders( '/' ) ;
179}
180
181window.onload = function()
182{
183        oListManager.Init() ;
184        LoadFolders( '/' ) ;
185}
186                </script>
187        </head>
188        <body class="FileArea" bottomMargin="10" leftMargin="10" topMargin="10" rightMargin="10">
189                <table id="tableFiles" cellSpacing="0" cellPadding="0" width="100%" border="0">
190                        <tr id="trUp" style="DISPLAY: none">
191                                <td width="16"><a id="linkUpIcon" href="#"><img alt="" src="images/FolderUp.gif" width="16" height="16" border="0"></a></td>
192                                <td nowrap width="100%">&nbsp;<a id="linkUp" href="#">..</a></td>
193                        </tr>
194                </table>
195        </body>
196</html>
Note: See TracBrowser for help on using the repository browser.