~ubuntu-branches/ubuntu/intrepid/moin/intrepid-updates

« back to all changes in this revision

Viewing changes to wiki/htdocs/applets/FCKeditor/editor/filemanager/browser/mcpuk/frmupload.html

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2006-02-14 16:09:24 UTC
  • mfrom: (0.2.13 upstream)
  • Revision ID: james.westby@ubuntu.com-20060214160924-fyrx3gvknzqvt4vj
Tags: 1.5.2-1ubuntu1
Drop python2.3 package.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<!--
2
 
 * FCKeditor - The text editor for internet
3
 
 * Copyright (C) 2003-2005 Frederico Caldeira Knabben
4
 
 * 
5
 
 * Licensed under the terms of the GNU Lesser General Public License:
6
 
 *              http://www.opensource.org/licenses/lgpl-license.php
7
 
 * 
8
 
 * For further information visit:
9
 
 *              http://www.fckeditor.net/
10
 
 * 
11
 
 * "Support Open Source software. What about a donation today?"
12
 
 * 
13
 
 * File Name: frmupload.html
14
 
 *      Page used to upload new files in the current folder.
15
 
 * 
16
 
 * File Authors:
17
 
 *              Frederico Caldeira Knabben (fredck@fckeditor.net)
18
 
 *              Grant French (grant@mcpuk.net)
19
 
-->
20
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
21
 
<html>
22
 
        <head>
23
 
                <link href="browser.css" type="text/css" rel="stylesheet" />
24
 
                <script type="text/javascript" src="js/fckxml.js"></script>
25
 
                <script type="text/javascript" src="js/common.js"></script>
26
 
                <script language="javascript">
27
 
 
28
 
var randomnumber=Math.floor(Math.random()*65535);
29
 
var refreshURL='';
30
 
var uploading=false;
31
 
 
32
 
function SetCurrentFolder( resourceType, folderPath )
33
 
{
34
 
        var sUrl = oConnector.UploadHandler +'?uploadID='+randomnumber+'&Connector='+escape(oConnector.ConnectorUrl)+'&Command=FileUpload' ;
35
 
        sUrl += '&Type=' + resourceType ;
36
 
        sUrl += '&CurrentFolder=' + folderPath ;
37
 
        sUrl += '&ExtraParams=' + oConnector.ExtraParams ;
38
 
        document.getElementById('frmUpload').action = sUrl ;
39
 
        
40
 
        oConnector.ResourceType = resourceType ;
41
 
        oConnector.CurrentFolder = folderPath ;
42
 
}
43
 
 
44
 
function OnSubmit()
45
 
{
46
 
        if ( document.getElementById('NewFile').value.length == 0 )
47
 
        {
48
 
                alert( 'Please select a file from your computer' ) ;
49
 
                return false ;
50
 
        }
51
 
 
52
 
        // Set the interface elements.
53
 
        document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder (Upload in progress, please wait... 0%)' ;
54
 
        document.getElementById('filebox').style.display="none";
55
 
        resetProgressBar();
56
 
        document.getElementById('progressbox').style.display="inline";
57
 
        document.getElementById('btnUpload').disabled = true ;
58
 
        
59
 
        uploading=true;
60
 
        setTimeout("GetUploadProgress()",2000);
61
 
        
62
 
        return true ;
63
 
}
64
 
 
65
 
function OnUploadCompleted( errorNumber, fileName )
66
 
{
67
 
        uploading=false;
68
 
        
69
 
        // Reset the Upload Worker Frame.
70
 
        window.parent.frames['frmUploadWorker'].location = '' ;
71
 
        
72
 
        // Reset the upload form.
73
 
        //Sometimes causes IE to get itself in a mess (wont allow second upload)
74
 
        //document.getElementById('NewFile').reset() ;
75
 
        
76
 
        // Reset the interface elements.
77
 
        document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder' ;
78
 
        document.getElementById('btnUpload').disabled = false ;
79
 
        
80
 
        var randomnumber=Math.floor(Math.random()*65535);
81
 
        SetCurrentFolder(oConnector.ResourceType,oConnector.CurrentFolder);
82
 
        
83
 
        switch ( errorNumber )
84
 
        {
85
 
                case 0 :
86
 
                        window.parent.frames['frmResourcesList'].Refresh() ;
87
 
                        document.getElementById('filebox').style.display="inline";
88
 
                        document.getElementById('progressbox').style.display="none";
89
 
                        break ;
90
 
                case 201 :
91
 
                        window.parent.frames['frmResourcesList'].Refresh() ;
92
 
                        document.getElementById('filebox').style.display="inline";
93
 
                        document.getElementById('progressbox').style.display="none";
94
 
                        alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
95
 
                        break ;
96
 
                case 202 :
97
 
                        document.getElementById('filebox').style.display="inline";
98
 
                        document.getElementById('progressbox').style.display="none";
99
 
                        alert( 'Error, "'+fileName+'"' ) ;
100
 
                        break ;
101
 
                default :
102
 
                        document.getElementById('filebox').style.display="inline";
103
 
                        document.getElementById('progressbox').style.display="none";
104
 
                        alert( 'Error on file upload. Error number: ' + errorNumber ) ;
105
 
                        break ;
106
 
        }
107
 
}
108
 
 
109
 
function resetProgressBar() {
110
 
        oProgressBar=document.getElementById('progress');
111
 
        var rows=oProgressBar.getElementsByTagName('tr');
112
 
        var row=rows[0];
113
 
        var cols=row.getElementsByTagName('td');
114
 
//      var label=document.getElementById("progress_label");
115
 
        
116
 
//      label.innerHTML="0%"
117
 
        for (i=0;i<(cols.length-1);i++) {
118
 
                cols[i].className="progress_hollow";    
119
 
        }
120
 
}
121
 
 
122
 
warned=false;
123
 
function GetUploadProgressCallback( fckXml ) {
124
 
        // Get the current folder path.
125
 
        
126
 
        if (!uploading) return false;
127
 
        
128
 
        var oNode = fckXml.SelectSingleNode( 'Connector/CurrentFolder' ) ;
129
 
        if (oNode==null) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return false; }
130
 
        if ((oNode.attributes.getNamedItem('path')==null)||(oNode.attributes.getNamedItem('url')==null)) {
131
 
                if(!warned) { alert("Invalid XML response from connector."); warned=true; }
132
 
                return;
133
 
        }
134
 
        
135
 
        var sCurrentFolderPath  = oNode.attributes.getNamedItem('path').value ;
136
 
        var sCurrentFolderUrl   = oNode.attributes.getNamedItem('url').value ;
137
 
 
138
 
        // Add the Folders.     
139
 
        var oNode = fckXml.SelectSingleNode( 'Connector/Progress' ) ;
140
 
        if (oNode==null) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return false; }
141
 
        if ((oNode.attributes.getNamedItem('max')==null)||(oNode.attributes.getNamedItem('value')==null)) {
142
 
                if(!warned) { alert("Invalid XML response from connector."); warned=true; }
143
 
                return;
144
 
        }
145
 
        
146
 
        var iMax        = oNode.attributes.getNamedItem('max').value ;
147
 
        var iValue      = oNode.attributes.getNamedItem('value').value ;
148
 
        
149
 
        var oNode = fckXml.SelectSingleNode( 'Connector/RefreshURL' ) ;
150
 
        if (oNode==null) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return false; }
151
 
        if ((oNode.attributes.getNamedItem('url')==null)) {
152
 
                if(!warned) { alert("Invalid XML response from connector."); warned=true; }
153
 
                return;
154
 
        }
155
 
        refreshURL      = oNode.attributes.getNamedItem('url').value ;
156
 
        
157
 
        var oProgressBar=document.getElementById('progress');
158
 
        //var label=document.getElementById("progress_label");
159
 
        var rows=oProgressBar.getElementsByTagName('tr');
160
 
        var row=rows[0];
161
 
        var cols=row.getElementsByTagName('td');
162
 
        var percentage=Math.floor((iValue/iMax)*100);
163
 
        document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder (Upload in progress, please wait.. ' + percentage + '% )' ;
164
 
        
165
 
        //label.innerHTML=percentage+"%"
166
 
        for (i=0;i<(cols.length-1);i++) {
167
 
                if (((i+1)*(100/cols.length))<=percentage) {
168
 
                        cols[i].className="progress_filled";    
169
 
                } else {
170
 
                        cols[i].className="progress_hollow";
171
 
                }
172
 
        }
173
 
        
174
 
        if (uploading) getProgressTimer=setTimeout("GetUploadProgress()",1000);
175
 
}
176
 
 
177
 
function GetUploadProgress() {
178
 
        if (uploading) oConnector.SendCommand( 'GetUploadProgress', 'uploadID='+randomnumber+'&refreshURL='+escape(refreshURL), GetUploadProgressCallback ) ;
179
 
}
180
 
 
181
 
window.onload = function()
182
 
{
183
 
        window.top.IsLoadedUpload = true ;
184
 
}
185
 
                </script>
186
 
        </head>
187
 
        <body bottomMargin="0" topMargin="0">
188
 
                <form id="frmUpload" action="" target="frmUploadWorker" method="post" enctype="multipart/form-data" onsubmit="return OnSubmit();">
189
 
                        <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
190
 
                                <tr>
191
 
                                        <td nowrap>
192
 
                                                <span id="eUploadMessage">Upload a new file in this folder</span><br>
193
 
                                                <table cellSpacing="0" cellPadding="0" width="100%" border="0">
194
 
                                                        <tr>
195
 
                                                                <td width="100%">
196
 
                                                                        <div id="filebox"><input id="NewFile" name="NewFile" style="width: 100%; background-color: transparent;" type="file"></div>
197
 
                                                                        <div id="progressbox" style="display: none">
198
 
                                                                                <table id="progress" style="width: 100%" class="progress_bar">
199
 
                                                                                        <tr>
200
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
201
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
202
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
203
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
204
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
205
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
206
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
207
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
208
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
209
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
210
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
211
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
212
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
213
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
214
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
215
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
216
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
217
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
218
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
219
 
                                                                                                <td class="progress_hollow">&nbsp;</td>
220
 
                                                                                        </tr>
221
 
                                                                                </table>
222
 
                                                                                <!--<div id="progress_label"></div>-->
223
 
                                                                        </div>
224
 
                                                                </td>
225
 
                                                                <td nowrap>&nbsp;<input id="btnUpload" type="submit" value="Upload"></td>
226
 
                                                        </tr>
227
 
                                                </table>
228
 
                                        </td>
229
 
                                </tr>
230
 
                        </table>
231
 
                </form>
232
 
        </body>
233
 
</html>