• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt/router/APP-IPK/AiCloud-ipk/opt/etc/aicloud_UI/css/
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5<meta http-equiv="X-UA-Compatible" content="IE=edge">
6<title></title>
7<style>
8html{
9margin:0 0;
10padding:0px;
11}
12body{
13display: block;
14overflow: hidden;
15background: #e8e8e8;
16}
17button#cancel{	
18position: absolute;
19width: 80px;
20height: 30px;
21right: 10px;
22top: 98px;
23}
24
25div#save{	
26width: 100px;
27height: 30px;
28right: 100px;
29position: absolute;
30top: 98px;
31}
32
33#progressbar {
34background-color: black;
35border-radius: 1px; /* (height of inner div) / 2 + padding */
36padding: 1px;
37}
38
39#progressbar div {
40width: 0; /* Adjust with JavaScript */
41height: 20px;
42border-radius: 1px;
43}
44
45#progressbar #div_progress {
46background-color: #16A8E4;
47}
48
49span{
50display: inline-block;
51}
52
53span#progress{
54width: 250px;
55white-space: nowrap;
56}
57
58.install, .enableJAVA {
59-webkit-box-shadow:rgba(0,0,0,0.0.1) 0 1px 0 0;
60-moz-box-shadow:rgba(0,0,0,0.0.1) 0 1px 0 0;
61box-shadow:rgba(0,0,0,0.0.1) 0 1px 0 0;
62background-color:#5B74A8;
63border:1px solid #29447E;
64font-family:'Lucida Grande',Tahoma,Verdana,Arial,sans-serif;
65font-size:12px;
66font-weight:700;
67padding:2px 6px;
68height:28px;
69color:#fff;
70border-radius:5px;
71-moz-border-radius:5px;
72-webkit-border-radius:5px;
73width: 100px;
74height: 30px;
75}
76</style>
77<script type="text/javascript" src="/smb/js/tools.js"></script>
78<script type="text/javascript" src="/smb/js/davclient_tools.js"></script>
79<script type="text/javascript" src="/smb/js/deployJava.js"></script>
80<script type="text/javascript">
81var this_url;
82var m = new lang();
83var g_storage = new myStorage();
84var is_private_ip = 0;
85var array_download_folder = [];
86var array_download_file = [];
87var g_open_url = '';
88var storage_key_map = {
89    "port": "http_port",
90    "agent": "user_agent"
91};
92
93function showEnableJAVAUI(){
94	
95	var enable_html = '<input class="enableJAVA" type="button" value="Enable JAVA">';
96	$(enable_html).appendTo($("#save"));
97	
98  refresh_hint_status(m.getString("title_not_support_java"));
99  
100  $(".enableJAVA").click(function(){
101  	window.open("http://java.com/en/download/help/enable_browser.xml", "_blank");
102  }); 
103}
104
105function showInstallJAVAUI(){
106	var enable_html = '<input class="install" type="button" value="'+ m.getString('btn_install_java') + '">';
107	$(enable_html).appendTo($("#save"));
108	
109	refresh_hint_status(m.getString("title_not_install_java"));
110	
111  $(".install").click(function(){
112  	window.open("http://java.com/download", "_blank");
113 	}); 
114}
115
116$("document").ready(function() {
117	var loc_lan = String(window.navigator.userLanguage || window.navigator.language).toLowerCase();		
118	var lan = ( g_storage.get('lan') == undefined ) ? loc_lan : g_storage.get('lan');
119	m.setLanguage(lan);
120	
121	$("#progressbar").hide();
122	
123	$('button#cancel').text(m.getString('btn_cancel'));
124	var msg = "";
125	
126	if (!navigator.javaEnabled()) {
127    showEnableJAVAUI();
128    return;
129	}
130	
131	var is_java_enabled = false;
132	if (deployJava.versionCheck("1.6.0+") || deployJava.versionCheck("1.4") || deployJava.versionCheck("1.5.0*")) {
133  	is_java_enabled = true;
134  }
135	
136	if(!is_java_enabled){
137		showInstallJAVAUI();
138		return;
139	}
140
141	if(getUrlVars()["p"]){
142		storage_key_map["port"] = getUrlVars()["p"];
143	}
144	
145	if(getUrlVars()["a"]){
146		storage_key_map["agent"] = getUrlVars()["a"];
147	}
148	
149	if(getUrlVars()["u"]){
150		g_open_url = getUrlVars()["u"];
151	}
152	
153	var media_hostName = window.location.host;
154	if(media_hostName.indexOf(":")!=-1)
155		media_hostName = media_hostName.substring(0, media_hostName.indexOf(":"));		
156	var jar_file = "http://" + media_hostName + ":" + g_storage.get(storage_key_map["port"]) + '/smb/css/CloudUtil.jar';
157				
158	var applet_html = '<applet name="AiCloud_Applet" id="AiCloud_Applet" ARCHIVE="';
159	applet_html += jar_file;
160	applet_html += '" code="com.asus.aicloud.Download.class" width="100%" height="100%" >';
161	applet_html += 'Your browser does not support JAVA!';
162	applet_html += '<PARAM NAME="MAYSCRIPT" VALUE="true">';
163	applet_html += '</applet>';
164	$(applet_html).appendTo($("#save"));
165	
166	this_url = getUrlVars()["v"];
167	
168	var select_folder = this_url.split(";");
169	
170	array_download_folder = [];
171	array_download_file = [];
172	
173	var msg = m.getString("title_download_folder_select");
174	msg = msg.replace("%s", select_folder.length);
175	
176	refresh_hint_status(msg);
177	
178	var count = select_folder.length;
179	for(var i=0; i<count; i++){
180		var folder_path = select_folder[i]; 
181		recursiove_propfind(folder_path);
182	}
183	
184});
185
186function recursiove_propfind(open_url){
187	if(open_url==""||open_url==undefined)
188		return;
189		
190	var client = new davlib.DavClient();
191	client.initialize();
192	
193	client.PROPFIND(open_url, null, function(error, statusstring, content){
194		if(error){
195			if(error==207){
196				
197				var parser;
198				var xmlDoc;
199							
200				var g_folder_array = new Array();
201				var g_file_array = new Array();
202
203				if (window.DOMParser){					
204					parser=new DOMParser();
205					xmlDoc=parser.parseFromString(content,"text/xml");
206				}
207				else { // Internet Explorer
208					xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
209          xmlDoc.async="false";
210					xmlDoc.loadXML(content);
211						
212					if(!xmlDoc.documentElement){
213						alert("Fail to load xml!");
214						showHideLoadStatus(false);
215						return;
216					}
217				}
218				
219				var i, j, k, l, n;						
220				var x = xmlDoc.documentElement.childNodes;
221						
222				var this_query_type = xmlDoc.documentElement.getAttribute('qtype'); //- 2: query host, 1: query share, 0: query file
223				var this_folder_readonly = xmlDoc.documentElement.getAttribute('readonly');
224				var this_router_username = xmlDoc.documentElement.getAttribute('ruser');
225				var this_computer_name = xmlDoc.documentElement.getAttribute('computername');
226				var this_isusb = xmlDoc.documentElement.getAttribute('isusb'); 
227				var cur_openurl = addPathSlash(g_open_url);
228				
229				//- D:Response	
230				for (i=0;i<x.length;i++){
231					var this_href = "";
232					var this_contenttype = "";
233					var this_uniqueid = "";
234					var this_name = "";
235					var this_short_name = "";
236					var this_online = "";
237					var this_lastmodified = "";
238					var this_contentlength = "";
239					var this_ip = "";
240					var this_mac = "";
241					var this_type = "";
242					var this_attr_readonly = "";
243					var this_attr_hidden = "";
244					var this_uncode_name;
245							
246					var y = x[i].childNodes;
247					for (j=0;j<y.length;j++){
248						if(y[j].nodeType==1&&y[j].nodeName=="D:propstat"){
249											
250								var z = y[j].childNodes;
251											
252								for (k=0;k<z.length;k++)
253								{
254									if(z[k].nodeName=="D:prop"){
255													
256										var a = z[k].childNodes;
257													
258										for (l=0;l<a.length;l++)
259										{
260											if(a[l].childNodes.length<=0)
261												continue;
262															
263											if(a[l].nodeName=="D:getcontenttype"){														
264												this_contenttype = String(a[l].childNodes[0].nodeValue);
265											}
266											else if(a[l].nodeName=="D:getuniqueid"){
267												this_uniqueid = String(a[l].childNodes[0].nodeValue);
268											}
269											else if(a[l].nodeName=="D:getonline"){
270												this_online = String(a[l].childNodes[0].nodeValue);
271											}
272											else if(a[l].nodeName=="D:getlastmodified"){
273												this_lastmodified = String(a[l].childNodes[0].nodeValue);
274											}
275											else if(a[l].nodeName=="D:getcontentlength"){
276												//this_contentlength = String( size_format(parseInt(a[l].childNodes[0].nodeValue)));
277												this_contentlength = String(a[l].childNodes[0].nodeValue);
278											}
279											else if(a[l].nodeName=="D:getmac"){
280												this_mac = String(a[l].childNodes[0].nodeValue);
281											}
282											else if(a[l].nodeName=="D:getip"){
283												this_ip = String(a[l].childNodes[0].nodeValue);
284											}
285											else if(a[l].nodeName=="D:gettype"){
286												this_type = String(a[l].childNodes[0].nodeValue);
287											}
288											else if(a[l].nodeName=="D:getattr"){
289												var bb = a[l].childNodes;												
290												for (n=0;n<bb.length;n++){
291													if(bb[n].nodeName=="D:readonly")
292														this_attr_readonly = bb[n].childNodes[0].nodeValue;
293													else if(bb[n].nodeName=="D:hidden")
294														this_attr_hidden = bb[n].childNodes[0].nodeValue;
295												}
296											}
297										}
298									}
299								}
300							}
301							else if(y[j].nodeType==1&&y[j].nodeName=="D:href"){
302								this_href = String(y[j].childNodes[0].nodeValue);
303								
304								var cur_host = "";
305								
306								if(this_href.match(/^http/))						
307									cur_host = window.location.protocol + "//" + window.location.host;	
308									
309								var cururl = cur_host + addPathSlash(open_url);
310																
311								if(this_href!=cururl){
312									var o_url = open_url;
313									this_href = this_href.replace(cur_host,"");									
314								}
315								else{
316									this_href="";
317								}
318								//alert(this_href);
319							}
320					}
321						
322					if(this_href!=""){							
323							if( this_contenttype=="httpd/unix-directory" ){
324								var loc = this_href.replace(addPathSlash(g_open_url),"");
325								array_download_folder.push({ folder: loc });
326								recursiove_propfind(this_href);
327							}				
328							else{
329								var loc = this_href.replace(addPathSlash(g_open_url),"");
330								array_download_file.push({ file: loc, size: this_contentlength });
331							}
332					}
333				}
334			}
335		}
336	}, null, 1);
337}
338
339function doCancel(e) {
340	parent.closeJqmWindow(0);
341};
342
343function getUrlVars(){
344	var vars = [], hash;
345  var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
346  for(var i = 0; i < hashes.length; i++){
347  	hash = hashes[i].split('=');
348    vars.push(hash[0]);
349    vars[hash[0]] = hash[1];
350  }
351  return vars;
352}
353
354function get_user_agent(){
355   return g_storage.get(storage_key_map["agent"]);
356}
357  	
358function get_server_url(){
359	var openurl = window.location.protocol + "//" + window.location.host + addPathSlash(g_open_url);
360	return openurl;
361}
362
363function get_remote_folder(){
364	return array_download_folder;	
365} 	
366
367function get_remote_file(){
368  return array_download_file;
369}
370
371function start_download(){
372	refresh_hint_status("");
373	refresh_status("");
374	$("#save").css("left", "999px");
375}
376
377function finish_download(){
378	refresh_status(m.getString("title_download_finish"));
379} 
380
381function refresh_hint_status(status){
382	$("span#hint").text(decodeURI(status));
383}
384
385function refresh_status(status){
386	$("span#progress").text(decodeURI(status));
387}
388    
389function refresh_progress(progress){
390	$("#lb_Progress").text(progress+"%");
391  $("#progressbar #div_progress").css("width", progress + "%");
392  $("#progressbar").show();
393}
394</script>
395</head>
396<body>
397
398<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" style="overflow:hidden;">	
399	<tr height="50px">
400  	<td>
401			<table width="100%">
402				<td><tr>				  
403					<span id='hint'></span>
404					<span id='progress'></span>
405				</td></tr>				
406			</table>  
407    </td>    
408  </tr>
409  <tr>
410  	<td>  
411  		<div id="progressbar" style="text-align:center;position:relative;">
412				<div id="div_progress" style="position: absolute;"></div>
413				<div style="position:relative;width:100%;"><label id="lb_Progress" style="color:#ffffff;"></label></div>
414			</div>
415    </td>    
416  </tr>  
417  <tr>
418  	<td>
419  	<div class="table_block_footer" style="float:right;height:30px;">
420  		<button id="cancel" class="btnStyle" onClick="doCancel();">Close</button>
421  		<div id="save">
422			</div>
423    </div>
424    </td>
425  </tr>
426</table>
427</body>
428</html>
429