-
Notifications
You must be signed in to change notification settings - Fork 21
/
Copy pathlist.php
114 lines (105 loc) · 4.91 KB
/
list.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
<?php
// $Id: list.php 354 2013-09-12 09:54:20Z happyman $
session_start([
'read_and_close' => true,
]);
if (empty($_SESSION['loggedin'])) {
header("Location: login.php");
exit(0);
}
require_once("config.inc.php");
// 輸出基本表格
if (!isset($_REQUEST['ajax'])) {
$count = map_list_count($_SESSION['uid']);
$user = fetch_user($_SESSION['mylogin']);
if ($user === false){
header("Location: login.php");
exit(0);
}
$ps = ($count / $user['limit'] )*100;
$psinfo = sprintf(" %d / %d 如不夠用可刪除舊圖", $count, $user['limit']);
$smarty->assign("ps",$ps);
$smarty->assign("psinfo",$psinfo);
$smarty->assign("title", "地圖列表");
echo $smarty->fetch("list.html");
}
// 輸出 ajax
// Sort?
else {
$maps = map_list_get($_SESSION['uid'],'DESC');
/*
$start = intval($_REQUEST['iDisplayStart']);
$limit = intval($_REQUEST['iDisplayLength']);
$result_map = array();
for($i=$start; $i< $start + $limit; $i++) {
if (isset($maps[$i]))
$result_map[] = $maps[$i];
}
$response['sEcho'] = intval($_REQUEST['sEcho']);
$response['iTotalRecords'] = count($maps);
$response['iTotalDisplayRecords'] = count($maps);
$response['aaData'] = create_rows($result_map,$start);
//print_r($_REQUEST);
exit(json_encode($response));
*/
for($i=0; $i< count($maps); $i++) {
if (isset($maps[$i]))
$result_map[] = $maps[$i];
}
$response['data'] = create_rows($result_map,0);
exit(json_encode($response));
}
function versionname($ver){
$version=[1=>'經建1',3=>'經建3',2016=>'魯地圖',1904=>'堡圖',1916=>'蕃地',1924=>'陸測',1921=>'堡圖2'];
if (isset($version[$ver]))
return $version[$ver];
else
return '其他';
}
function create_rows($maps,$startsn=0) {
global $TWMAP3URL;
$td = array();
for($i=0;$i<count($maps);$i++) {
if ($maps[$i]['gpx'] == 1) {
// 產生瀏覽連結
$gpx = sprintf("<span id='icon_mapshow' onclick=\"map_action('mapshow','%s?goto=%d,%d&show_kml_layer=1')\"></span>",$TWMAP3URL, $maps[$i]['locX'] + $maps[$i]['shiftX']*500, $maps[$i]['locY']-$maps[$i]['shiftY']*500 );
} else $gpx = "";
$rows[$i]['mid'] = sprintf("<span id='icon_save_link' onclick='map_action(\"view\",%d);'>%d</span>", $maps[$i]['mid'],$maps[$i]['mid']);
$rows[$i]['sn'] = $i+1+$startsn;
$rows[$i]['date'] = preg_replace("#\.\d+$#","",$maps[$i]['cdate']);
$rows[$i]['title'] = sprintf("%s <span id='icon_save_link' onclick='map_action(\"view\",%d);'>%s</span>", $gpx, $maps[$i]['mid'],$maps[$i]['title']);
$rows[$i]['x'] = $maps[$i]['locX'];
$rows[$i]['y'] = $maps[$i]['locY'];
$rows[$i]['grid'] = sprintf("%dx%d",$maps[$i]['shiftX'], $maps[$i]['shiftY']);
$rows[$i]['version'] = sprintf("TWD%s %s",$maps[$i]['datum'],versionname($maps[$i]['version']));
$rows[$i]['size'] = humanreadable($maps[$i]['size']);
$button_class='class="fg-button ui-state-default ui-corner-all"';
$op = array();
$op[] = sprintf("<span id='icon_delete' title='永久刪除'
onclick=\"map_action('del',%d)\"></span>", $maps[$i]['mid']);
// 如果地圖已經過期
if ($maps[$i]['flag'] == 1 ) {
// 看看是不是澎湖
//if (strstr($maps[$i]['filename'],'v3p') || strstr($maps[$i]['filename'],'v2016p'))
if (preg_match('/v\d+p/',$maps[$i]['filename'])) $ph = 1; else $ph = 0;
// version 看起來還是數字
if ($maps[$i]['gpx'] == 1 ) {
$param = sprintf("mid=%s&title=%s&filename=%s",$maps[$i]['mid'],urlencode($maps[$i]['title']),$maps[$i]['filename']);
$op[] = sprintf("<span id='icon_recreate' title=\"mid=%d 重新產生\"
onclick=\"map_action('recreate_gpx','%s')\"></span>", $maps[$i]['mid'],$param);
} else {
$param = sprintf("x=%d&y=%d&shiftx=%d&shifty=%d&title=%s&version=%d&ph=%d&datum=TWD%s",$maps[$i]['locX']/1000,$maps[$i]['locY']/1000,$maps[$i]['shiftX'],$maps[$i]['shiftY'],urlencode($maps[$i]['title']),$maps[$i]['version'],$ph,$maps[$i]['datum']);
$op[] = sprintf("<span id='icon_recreate' title=\"mid=%d 重新產生\"
onclick=\"map_action('recreate','%s')\"></span>",$maps[$i]['mid'], $param);
}
} else {
$op[] = sprintf("<span id='icon_recycle' onclick=\"map_action('expire',%d)\" title=\"清理空間\"></span>",$maps[$i]['mid']);
$op[] = sprintf("<span id='icon_save' onclick=\"map_action('view',%d)\" title=\"mid=%d%s 檢視下載\"></span>",$maps[$i]['mid'], $maps[$i]['mid'],($maps[$i]['keepon_id'])? ",keepon=".$maps[$i]['keepon_id'] : "");
$op[] = sprintf("<span id='icon_browse' onclick=\"map_action('link',%d)\" title='外部連結'></span>\n", $maps[$i]['mid']);
}
$rows[$i]['op'] = implode("\n",$op);
//$td[$i] = array($rows[$i]['sn'], $rows[$i]['date'], $rows[$i]['title'],$rows[$i]['x'],$rows[$i]['y'], $rows[$i]['grid'],sprintf("%s %s",$rows[$i]['pages'],$rows[$i]['pagetype']),$rows[$i]['version'],$rows[$i]['size'],$rows[$i]['op']);
$td[$i] = array($rows[$i]['sn'], $rows[$i]['mid'],$rows[$i]['date'], $rows[$i]['title'],$rows[$i]['x'],$rows[$i]['y'], $rows[$i]['grid'],$rows[$i]['version'],$rows[$i]['size'],$rows[$i]['op']);
}
return $td;
}