-
Notifications
You must be signed in to change notification settings - Fork 26
/
directinstaller.php
107 lines (75 loc) · 3.34 KB
/
directinstaller.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
<?php
// download script really
require_once 'init.php';
$API->auth();
if (!is_premium()) {
$API->TPL->assign('message', $API->LANG->_('Your account type is not premium'));
$API->TPL->assign('warning', "<a href=\"{$API->SEO->make_link('premium')}\">{$API->LANG->_("Extend account")}</a>");
$API->TPL->display('message.tpl');
die();
}
$id = $API->getval('id', 'int');
$udid = $API->getval('udid');
$app = $API->DB->query_row("SELECT links.*,apps.* FROM links LEFT JOIN apps ON links.trackid=apps.trackid WHERE links.id=$id");
if (!$app) {
app_error_message($trackid);
}
//$app['last_parse_itunes'] = json_decode($app['last_parse_itunes'], true);
if ($udid) {
$check = $API->DB->get_row_count("push", "WHERE udid={$API->DB->sqlesc($udid)} AND account_id={$API->account['id']}");
if (!$check)
die($API->LANG->_('This device does not belong to you'));
$link = $app['link'];
//var_dump($link);
if (!$link) {
die($API->LANG->_('Error'));
}
/*
* LINK GET CODE, used in APPGW too
*/
//in appgw: get_signservice_link,get_directinsaller_link; signservice, directinstaller
$link = get_directinstaller_link($link);
//die($link);
if (!$link) {
$API->error($API->LANG->_('Something went wrong. Sorry for inconvenience.') . " <a href=\"{$API->SEO->make_link('report', 'id', $id, 'reason', 'Directinstaller failture')}\">{$API->LANG->_('Report broken link')}</a>");
}
$link = $API->SEO->make_link('plist', 'b', urlencode($app['bundle_id']), 'i', urlencode($app['image']), 'n', urlencode($app['name']), 'l', urlencode($link));
$link = generate_short_link($link);
//die($link);
send_push("{$API->LANG->_('Install')} {$app['name']}", 7, json_encode(array('url' => $link)), $udid);
//send_push('test',7,'','4297c9148fcd0894fe6447e31d296c1fc01f55c3');
die($API->LANG->_('Install request has been sent. Please wait a little.'));
}
$API->TPL->assign('appdata', $app);
$API->TPL->assign('headeradd', '
<link rel="stylesheet" type="text/css" href="./css/tracks.css">
<script>
function report(id) {
var report = prompt("' . str_replace('"', '\"', $API->LANG->_('REPORT_WARNING')) . '");
if (!report) {
alert("' . str_replace('"', '\"', $API->LANG->_('You must provide reason of report')) . '");
return false;
}
window.location="report.php?id="+id+"&reason="+report;
return true;
}
function install_on_device(udid) {
var id="' . $id . '";
var confirmed = confirm("' . str_replace('"', '\"', $API->LANG->_('OTA_INSTALL_NOTICE')) . '");
if (!confirmed) {
alert("' . str_replace('"', '\"', $API->LANG->_('You must to be authorized in iOS App to use over-the-air installer')) . '");
return false;}
$("#device-"+udid).html("<td colspan=\"4\">' . str_replace('"', '\"', $API->LANG->_('Sending request...')) . '</td>");
$.post("' . $API->SEO->make_link('directinstaller') . '",{udid:udid,id:id},function(data) {
$("#device-"+udid).html("<td colspan=\"4\">"+data+"</td>");
});
}
</script>
');
$API->TPL->assign('pagetitle', $API->LANG->_('DirectInstaller'));
$API->TPL->assign('footername', $API->LANG->_('Downloading Content...'));
$devices = $API->DB->query_return("SELECT * FROM push WHERE account_id={$API->account['id']}");
$API->TPL->assign('devices', $devices);
// check that app is uloaded:
$API->TPL->display('directinstaller.tpl');
?>