Revision 545
Date:
2016/01/27 12:39:21
Author:
ahitrov
Revision Log:
Additional order statuses
Files:
Legend:
Added
Removed
Modified
utf8/plugins/webshop/comps/contenido/webshop/components/block_order_status_changer.msn
3
3
4
4
<table width="100%" border="0" cellpadding="3" cellspacing="0" class="tlistdocs">
5
5
<tr bgcolor="#efefef">
6
<th align="center" width="1%">ID</th>
7
<th>Статус</th>
6
<th align="center" width="1%">ID</th>
7
<th>Основной статус</th>
8
</tr>
8
9
9
10
% foreach my $case ( @cases ) {
10
% next unless $case->[0];
11
% next if !$case->[0] || $case->[0] > 5;
11
12
% my $style = $status && $case->[0] == $status ? 'inverted' : '';
12
<tr class="<% $style %>">
13
<td><% $case->[0] %></td>
14
<td><table cellpadding="0" cellspacing="0" border="0">
15
<tr valign="top">
16
<td width="10"> </td>
17
<td><a href="./?ost=<% $case->[0] %>"><% Encode::encode('utf-8', ucfirst(Encode::decode('utf-8',$case->[1]))) %></a></td>
18
</tr>
19
</table>
20
</td>
21
</tr>
13
<tr class="<% $style %>">
14
<td><% $case->[0] %></td>
15
<td><table cellpadding="0" cellspacing="0" border="0">
16
<tr valign="top">
17
<td width="10"> </td>
18
<td><a href="./?ost=<% $case->[0] %>"><% Encode::encode('utf-8', ucfirst(Encode::decode('utf-8',$case->[1]))) %></a></td>
19
</tr>
20
</table>
21
</td>
22
</tr>
23
24
22
25
% }
26
<tr bgcolor="#efefef">
27
<th align="center" width="1%">ID</th>
28
<th>Дополнительный статус</th>
29
</tr>
30
% foreach my $case ( @cases ) {
31
% next if $case->[0] < 6;
32
% my $style = $status && $case->[0] == $status ? 'inverted' : '';
33
<tr class="<% $style %>">
34
<td><% $case->[0] %></td>
35
<td><table cellpadding="0" cellspacing="0" border="0">
36
<tr valign="top">
37
<td width="10"> </td>
38
<td><a href="./?ost=<% $case->[0] %>"><% Encode::encode('utf-8', ucfirst(Encode::decode('utf-8',$case->[1]))) %></a></td>
39
</tr>
40
</table>
41
</td>
42
</tr>
23
43
44
45
% }
46
24
47
</table>
25
48
26
49
</fieldset>
utf8/plugins/webshop/comps/contenido/webshop/components/order_browse.msn
231
231
232
232
my %users;
233
233
my ($href, @actions, $user_id);
234
if ( $status == 1 && (!$active_rights || $active_rights == 1) ) {
234
if ( ($status == 1 || $status == 6 || $status == 7 || $status == 8) && (!$active_rights || $active_rights == 1) ) {
235
235
$href = 'take_care.html';
236
236
@actions = { href => $href, name => 'обработать' };
237
237
$user_id = 'manager_id';
utf8/plugins/webshop/comps/contenido/webshop/components/order_form.msn
35
35
<input type="submit" name="_save_and_complect" value="На комплектацию" class="input_btn">
36
36
<input type="submit" name="_save_and_deliver" value="Сразу в доставку" class="input_btn">
37
37
% }
38
<hr>
39
<input type="submit" name="_save_status_6" value="Ожидание оплаты" class="input_btn">
40
<input type="submit" name="_save_status_7" value="Товар в резерве" class="input_btn">
41
<input type="submit" name="_save_status_8" value="Не дозвонились" class="input_btn">
38
42
39
43
<input type="hidden" name="control_charset" value="Контроль">
40
44
% if ( ref $filter_params eq 'HASH' ) {
utf8/plugins/webshop/comps/contenido/webshop/delivery.html
193
193
$document->status(1);
194
194
} elsif ( $ARGS{_ret_facility} ) {
195
195
$document->status(2);
196
} elsif ( $ARGS{_save_status_6} || $ARGS{_save_status_7} || $ARGS{_save_status_8} ) {
197
$document->status($ARGS{_save_status_6} ? 6 : $ARGS{_save_status_7} ? 7 : 8);
196
198
} elsif ( $ARGS{_save_and_leave} ) {
197
199
}
198
200
…
…
207
209
$m->redirect("./?ost=3");
208
210
} elsif ($ARGS{_ret_facility}) {
209
211
$m->redirect("./?ost=3");
210
} elsif ($ARGS{_save_and_leave}) {
211
$m->redirect("./?ost=1".($return_params ? '&'.$return_params : ''));
212
} elsif ($ARGS{_save_and_leave} || $ARGS{_save_status_6} || $ARGS{_save_status_7} || $ARGS{_save_status_8}) {
213
my $st = $ARGS{_save_status_6} ? 6 : $ARGS{_save_status_7} ? 7 : $ARGS{_save_status_8} ? 8 : 3;
214
$m->redirect("./?ost=".$st.($return_params ? '&'.$return_params : ''));
212
215
}
213
216
214
217
$m->redirect("delivery.html?id=".$document->id.($return_params ? '&'.$return_params : ''));
utf8/plugins/webshop/comps/contenido/webshop/facility.html
169
169
$document->status(1);
170
170
} elsif ( $ARGS{_save_and_leave} ) {
171
171
$document->vault_id( undef );
172
$document->status(1);
172
} elsif ( $ARGS{_save_status_6} || $ARGS{_save_status_7} || $ARGS{_save_status_8} ) {
173
$document->vault_id( undef );
174
$document->status($ARGS{_save_status_6} ? 6 : $ARGS{_save_status_7} ? 7 : 8);
173
175
}
174
176
175
177
unless ($document->store()) {
…
…
183
185
$m->redirect("./?ost=2");
184
186
} elsif ($ARGS{_save_and_leave}) {
185
187
$m->redirect("./?ost=2");
186
} elsif ($ARGS{_save_and_leave}) {
187
$m->redirect("./?ost=1".($return_params ? '&'.$return_params : ''));
188
} elsif ($ARGS{_save_and_leave} || $ARGS{_save_status_6} || $ARGS{_save_status_7} || $ARGS{_save_status_8}) {
189
my $st = $ARGS{_save_status_6} ? 6 : $ARGS{_save_status_7} ? 7 : $ARGS{_save_status_8} ? 8 : 2;
190
$m->redirect("./?ost=".$st.($return_params ? '&'.$return_params : ''));
188
191
}
189
192
190
193
$m->redirect("take_care.html?id=".$document->id.($return_params ? '&'.$return_params : ''));
utf8/plugins/webshop/comps/contenido/webshop/take_care.html
166
166
$document->status(2);
167
167
} elsif ( $ARGS{_save_and_leave} ) {
168
168
$document->manager_id( undef );
169
$document->status(1);
169
} elsif ( $ARGS{_save_status_6} || $ARGS{_save_status_7} || $ARGS{_save_status_8} ) {
170
$document->manager_id( undef );
171
$document->status($ARGS{_save_status_6} ? 6 : $ARGS{_save_status_7} ? 7 : 8);
170
172
}
171
173
172
174
unless ($document->store()) {
…
…
178
180
$m->redirect("./?ost=2");
179
181
} elsif ($ARGS{_save_and_deliver}) {
180
182
$m->redirect("./?ost=3");
181
} elsif ($ARGS{_save_and_leave}) {
182
$m->redirect("./?ost=1".($return_params ? '&'.$return_params : ''));
183
} elsif ($ARGS{_save_and_leave} || $ARGS{_save_status_6} || $ARGS{_save_status_7} || $ARGS{_save_status_8}) {
184
$m->redirect("./?ost=".$document->status.($return_params ? '&'.$return_params : ''));
183
185
}
184
186
185
187
$m->redirect("take_care.html?id=".$document->id.($return_params ? '&'.$return_params : ''));
utf8/plugins/webshop/lib/webshop/Order.pm
15
15
[3, 'в доставке'],
16
16
[4, 'доставлен'],
17
17
[5, 'отклонен'],
18
[6, 'ожидание оплаты'],
19
[7, 'товар в резерве'],
20
[8, 'не дозвонились'],
18
21
],
19
22
},
20
23
{ 'attr' => 'delivery', 'type' => 'lookup', 'rusname' => 'Тип доставки', facilshow => 1, postshow => 1,
Небольшая справка по веткам
cnddist – контейнер, в котором хранятся все дистрибутивы всех библиотек и программных пакетов, которые использовались при построении различных версий Contenido. Если какой-то библиотеки в данном хранилище нет, инсталлятор сделает попытку "подтянуть" ее с веба (например, с CPAN). Если библиотека слишком старая, есть очень большая вероятность, что ее там уже нет. Поэтому мы храним весь хлам от всех сборок. Если какой-то дистрибутив вдруг отсутствует в cnddist - напишите нам, мы положим его туда.
koi8 – отмирающая ветка, чей код, выдача и все внутренние библиотеки заточены на кодировку KOI8-R. Вносятся только те дополнения, которые касаются внешнего вида и функционала админки, баги ядра, обязательные обновления портов и мелочи, которые легко скопипастить. В дальнейшем планируется полная остановка поддержки по данной ветке.
utf8 – актуальная ветка, заточенная под UTF-8.
Внутри каждой ветки: core – исходники ядра; install – скрипт установки инсталляции; plugins – плагины; samples – "готовые к употреблению" проекты, которые можно поставить, запустить и посмотреть, как они работают.