forked from poppyred/1.6.x
/
system.internal.disks.BuildBigPartition.php
executable file
·125 lines (101 loc) · 3.34 KB
/
system.internal.disks.BuildBigPartition.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<?php
include_once('ressources/class.templates.inc');
include_once('ressources/class.ldap.inc');
include_once('ressources/class.users.menus.inc');
include_once("ressources/class.os.system.inc");
include_once("ressources/class.lvm.org.inc");
$user=new usersMenus();
if(!$user->AsSystemAdministrator){echo "alert('no privileges');";die();}
if(isset($_GET["popup"])){popup();exit;}
if(isset($_POST["dev"])){perform();exit;}
if(isset($_GET["GetLogs"])){GetLogs();exit;}
js();
function js(){
$page=CurrentPageName();
header("content-type: application/x-javascript");
$dev=$_GET["dev"];
$devenc=urlencode($dev);
echo "YahooWinBrowse('700','$page?popup=yes&dev=$devenc','$dev',true)";
}
function popup(){
$page=CurrentPageName();
$tpl=new templates();
$sock=new sockets();
$fsarray=unserialize(base64_decode($sock->getFrameWork("system.php?fsarray=yes")));
$macro_build_bigpart_warning=$tpl->javascript_parse_text('{macro_build_bigpart_warning}');
$devenc=urlencode($_GET["dev"]);
$t=time();
$html="
<div style='width:98%' class=form>
<div style='font-size:26px'>{macro_build_bigpart}</td>
<div style='font-size:18px' class=text-info>{macro_build_bigpart_explain}</div>
<table style='width:100%'>
<tr>
<td style='font-size:22px' class=legend>{filesystem_type}:</td>
<td>".Field_array_Hash($fsarray, "fs_type-$t","ext4","style:font-size:22px")."</td>
<td width=1%></td>
</tr>
<tr>
<td style='font-size:22px' class=legend>{label}:</td>
<td>". Field_text("labeldev-$t","NewDisk","font-size:22px;width:180px",null,null,null,false,"SaveCK$t(event)")."</td>
</tr>
<tr>
<td colspan=2 align=right><hr>". button("{apply}","Save$t()",32)."</td>
</tr>
</table>
</div>
<div style='width:95%' id='$t-results'></div>
<script>
function GetLogs$t(){
LoadAjaxTiny('$t-results','$page?GetLogs=yes&dev=$devenc');
if(!YahooWinBrowseOpen()){return;}
setTimeout('GetLogs$t()',5000);
}
var xSave$t= function (obj) {
UnlockPage();
var results=obj.responseText;
if(results.length>0){
Loadjs(results);
}
}
function SaveCK$t(e){
if(!checkEnter(e)){return;}
Save$t();
}
function Save$t(){
if(!confirm('$macro_build_bigpart_warning')){return;}
var XHR = new XHRConnection();
XHR.appendData('dev','{$_GET["dev"]}');
XHR.appendData('fs_type',document.getElementById('fs_type-$t').value);
XHR.appendData('label',document.getElementById('labeldev-$t').value);
LockPage();
XHR.sendAndLoad('$page', 'POST',xSave$t);
}
</script>
";
echo $tpl->_ENGINE_parse_body($html);
}
function perform(){
$dev=$_POST["dev"];
$label=$_POST["label"];
$label=substr($label,0,16);
$label=trim($label);
$label=replace_accents($label);
$sock=new sockets();
$fs_type=$_POST["fs_type"];
//--format-b-part
$dev=urlencode($dev);
$label=urlencode($label);
echo "system.internal.disks.BuildBigPartition.progress.php?dev=$dev&label=$label&fs_type=$fs_type";
return;
$datas=base64_decode($sock->getFrameWork("cmd.php?fdisk-build-big-partitions=yes&dev=$dev&label=$label&fs_type=$fs_type&MyCURLTIMEOUT=240"));
}
function GetLogs(){
$sock=new sockets();
$sock->getFrameWork("cmd.php?usb-scan-write=yes&force=yes&tenir=yes&MyCURLTIMEOUT=120");
$filelogs="/usr/share/artica-postfix/ressources/logs/web/".md5($_GET["dev"]);
$f=explode("\n",@file_get_contents($filelogs));
while (list ($cat, $line) = each ($f) ){
echo "<div>".htmlentities($line)."</div>";
}
}