Image.php
2.94 KB
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
<?php
class N2SystemBackendImageControllerAjax extends N2SystemBackendVisualManagerControllerAjax
{
protected $type = 'image';
public function actionLoadVisualForImage() {
$this->validateToken();
$model = $this->getModel();
$image = N2Request::getVar('image');
$visual = $model->getVisual($image);
if (!empty($visual)) {
$this->response->respond(array(
'visual' => $visual
));
} else {
if (($visual = $model->addVisual($image, N2StorageImage::$emptyImage))) {
$this->response->respond(array(
'visual' => $visual
));
}
}
N2Message::error(n2_('Unexpected error'));
$this->response->error();
}
public function actionGenerateImage() {
$this->validateToken();
$device = N2Request::getVar('device');
$this->validateVariable($device == 'tablet' || $device == 'mobile', 'device');
$image = N2Request::getVar('image');
$this->validateVariable(!empty($image), 'image');
N2Loader::import('libraries.image.image');
$scale = array(
'tablet' => 0.5,
'mobile' => 0.3
);
$newImage = N2Image::scaleImage('image', $image, $scale[$device], true);
$this->response->respond(array(
'image' => N2ImageHelper::fixed($newImage)
));
}
public function actionAddVisual() {
$this->validateToken();
$image = N2Request::getVar('image');
$this->validateVariable(!empty($image), 'image');
$model = $this->getModel();
if (($visual = $model->addVisual($image, N2Request::getVar('value')))) {
$this->response->respond(array(
'visual' => $visual
));
}
N2Message::error(n2_('Unexpected error'));
$this->response->error();
}
public function actionDeleteVisual() {
$this->validateToken();
$visualId = N2Request::getInt('visualId');
$this->validateVariable($visualId > 0, 'image');
$model = $this->getModel();
if (($visual = $model->deleteVisual($visualId))) {
$this->response->respond(array(
'visual' => $visual
));
}
N2Message::error(n2_('Not editable'));
$this->response->error();
}
public function actionChangeVisual() {
$this->validateToken();
$visualId = N2Request::getInt('visualId');
$this->validateVariable($visualId > 0, 'image');
$model = $this->getModel();
if (($visual = $model->changeVisual($visualId, N2Request::getVar('value')))) {
$this->response->respond(array(
'visual' => $visual
));
}
N2Message::error(n2_('Unexpected error'));
$this->response->error();
}
public function getModel() {
return new N2SystemImageModel();
}
}