1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
csv_setup.php
См. документацию.
1<?php
2//<title>CSV</title>
3IncludeModuleLangFile($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/catalog/export_setup_templ.php');
4
6
7$NUM_CATALOG_LEVELS = intval(COption::GetOptionString("catalog", "num_catalog_levels", 3));
10
12
13global
25
26$strCatalogDefaultFolder = COption::GetOptionString("catalog", "export_default_path", CATALOG_DEFAULT_EXPORT_PATH);
27
28$STEP = intval($STEP);
29
30if (0 >= $STEP)
31 $STEP = 1;
32
33$ACTION = strval($ACTION);
34
35//******************** ACTIONS **************************************//
36if (($ACTION == 'EXPORT_EDIT' || $ACTION == 'EXPORT_COPY') && $STEP == 1)
37{
38 if (isset($arOldSetupVars['IBLOCK_ID']))
39 $IBLOCK_ID = $arOldSetupVars['IBLOCK_ID'];
40}
41if ($STEP>1)
42{
43 $IBLOCK_ID = intval($IBLOCK_ID);
44 if ($IBLOCK_ID <= 0)
45 {
46 $arSetupErrors[] = GetMessage("CATI_NO_IBLOCK");
47 }
48 else
49 {
50 $rsIBlocks = CIBlock::GetList(array(),array('IBLOCK_ID' => $IBLOCK_ID,'CHECK_PERMISSIONS' => 'N'));
51 if (!($arIBlock = $rsIBlocks->Fetch()))
52 {
53 $arSetupErrors[] = GetMessage("CATI_NO_IBLOCK");
54 }
55 elseif (!CIBlockRights::UserHasRightTo($IBLOCK_ID, $IBLOCK_ID, 'iblock_admin_display'))
56 {
57 $arSetupErrors[] = str_replace('#IBLOCK_ID#', $IBLOCK_ID, GetMessage('CET_ERROR_IBLOCK_PERM'));
58 }
59 }
60
61 if (!empty($arSetupErrors))
62 {
63 $STEP = 1;
64 }
65}
66
67if (($ACTION == 'EXPORT_EDIT' || $ACTION == 'EXPORT_COPY') && $STEP == 2)
68{
69 if (isset($arOldSetupVars['fields_type']))
70 $fields_type = $arOldSetupVars['fields_type'];
71 if (isset($arOldSetupVars['delimiter_r']))
72 $delimiter_r = $arOldSetupVars['delimiter_r'];
73 if (isset($arOldSetupVars['delimiter_r_char']))
74 $delimiter_r_char = $arOldSetupVars['delimiter_r_char'];
75 if ($arOldSetupVars['delimiter_other_r'])
76 $delimiter_other_r = $arOldSetupVars['delimiter_other_r'];
77 if (isset($arOldSetupVars['first_names_r']))
78 $first_names_r = $arOldSetupVars['first_names_r'];
79 if (isset($arOldSetupVars['first_line_names']))
80 $first_line_names = $arOldSetupVars['first_line_names'];
81 if (isset($arOldSetupVars['SETUP_FILE_NAME']))
82 $SETUP_FILE_NAME = $arOldSetupVars['SETUP_FILE_NAME'];
83 if (isset($arOldSetupVars['SETUP_PROFILE_NAME']))
84 $SETUP_PROFILE_NAME = $arOldSetupVars['SETUP_PROFILE_NAME'];
85 if ($arOldSetupVars['IBLOCK_ID'] == $IBLOCK_ID)
86 {
87 if (isset($arOldSetupVars['field_needed']))
88 $field_needed = $arOldSetupVars['field_needed'];
89 if (isset($arOldSetupVars['field_num']))
90 $field_num = $arOldSetupVars['field_num'];
91 if (isset($arOldSetupVars['field_code']))
92 $field_code = $arOldSetupVars['field_code'];
93 }
94}
95
96if ($STEP>2)
97{
98 if (!isset($fields_type) || ($fields_type!="F" && $fields_type!="R"))
99 {
100 $arSetupErrors[] = GetMessage("CATI_NO_FORMAT");
101 }
102
103 $delimiter_r_char = '';
104 if (isset($delimiter_r))
105 {
106 switch ($delimiter_r)
107 {
108 case "TAB":
109 $delimiter_r_char = "\t";
110 break;
111 case "ZPT":
112 $delimiter_r_char = ",";
113 break;
114 case "SPS":
115 $delimiter_r_char = " ";
116 break;
117 case "OTR":
118 $delimiter_r_char = (isset($delimiter_other_r)? mb_substr($delimiter_other_r, 0, 1) : '');
119 break;
120 case "TZP":
121 $delimiter_r_char = ";";
122 break;
123 }
124 }
125
126 if (mb_strlen($delimiter_r_char) != 1)
127 {
128 $arSetupErrors[] = GetMessage("CATI_NO_DELIMITER");
129 }
130
131 if (!isset($SETUP_FILE_NAME) || $SETUP_FILE_NAME == '')
132 {
133 $arSetupErrors[] = GetMessage("CATI_NO_SAVE_FILE");
134 }
135
136 if (empty($arSetupErrors))
137 {
138 $SETUP_FILE_NAME = str_replace('//','/',$strCatalogDefaultFolder.Rel2Abs("/", $SETUP_FILE_NAME));
140 {
141 $arSetupErrors[] = GetMessage("CES_ERROR_BAD_EXPORT_FILENAME");
142 }
144 {
145 $arSetupErrors[] = GetMessage("CATI_NO_SAVE_FILE");
146 }
147 }
148
149 if (empty($arSetupErrors))
150 {
151 if (mb_strtolower(mb_substr($SETUP_FILE_NAME, mb_strlen($SETUP_FILE_NAME) - 4)) != ".csv")
152 $SETUP_FILE_NAME .= ".csv";
154 {
155 $arSetupErrors[] = GetMessage("CES_ERROR_BAD_EXPORT_FILENAME_EXTENTIONS");
156 }
157 }
158
159 if (empty($arSetupErrors))
160 {
161 if ($APPLICATION->GetFileAccessPermission($SETUP_FILE_NAME) < "W")
162 {
163 $arSetupErrors[] = str_replace("#FILE#", $SETUP_FILE_NAME, GetMessage('CATI_NO_RIGHTS_FILE'));
164 }
165 else
166 {
167 CheckDirPath($_SERVER["DOCUMENT_ROOT"].$SETUP_FILE_NAME);
168 if (!($fp = fopen($_SERVER["DOCUMENT_ROOT"].$SETUP_FILE_NAME, "wb")))
169 {
170 $arSetupErrors[] = GetMessage("CATI_CANNOT_CREATE_FILE");
171 }
172 else
173 {
174 fclose($fp);
175 unlink($_SERVER["DOCUMENT_ROOT"].$SETUP_FILE_NAME);
176 }
177 }
178 }
179
180 $bFieldsPres = (!empty($field_needed) && is_array($field_needed) && in_array('Y', $field_needed));
181 if ($bFieldsPres && (empty($field_code) || !is_array($field_code)))
182 {
183 $bFieldsPres = false;
184 }
185 if (!$bFieldsPres)
186 {
187 $arSetupErrors[] = GetMessage("CATI_NO_FIELDS");
188 }
189
190 // We can't link more than 30 tables
191 $tableLinksCount = 10;
192 for ($i = 0, $intCount = count($field_code); $i < $intCount; $i++)
193 {
194 if (mb_substr($field_code[$i], 0, mb_strlen("CR_PRICE_")) == "CR_PRICE_" && $field_needed[$i]=="Y")
195 {
196 $tableLinksCount++;
197 }
198 elseif (mb_substr($field_code[$i], 0, mb_strlen("IP_PROP")) == "IP_PROP" && $field_needed[$i]=="Y")
199 {
200 $tableLinksCount+=2;
201 }
202 }
203 if ($tableLinksCount>30)
204 {
205 $arSetupErrors[] = GetMessage("CATI_TOO_MANY_TABLES");
206 }
207
208 if (($ACTION=="EXPORT_SETUP" || $ACTION == 'EXPORT_EDIT' || $ACTION == 'EXPORT_COPY') && (!isset($SETUP_PROFILE_NAME) || $SETUP_PROFILE_NAME == ''))
209 {
210 $arSetupErrors[] = GetMessage("CET_ERROR_NO_NAME");
211 }
212
213 if (!empty($arSetupErrors))
214 {
215 $STEP = 2;
216 }
217}
218//******************** END ACTIONS **********************************//
219
221 array(
222 "TEXT"=>GetMessage("CATI_ADM_RETURN_TO_LIST"),
223 "TITLE"=>GetMessage("CATI_ADM_RETURN_TO_LIST_TITLE"),
224 "LINK"=>"/bitrix/admin/cat_export_setup.php?lang=".LANGUAGE_ID,
225 "ICON"=>"btn_list",
226 )
227);
228
230
231$context->Show();
232
233if (!empty($arSetupErrors))
234 ShowError(implode('<br />', $arSetupErrors));
235
237if ($adminSidePanelHelper->isSidePanel())
238{
239 $actionParams = "?IFRAME=Y&IFRAME_TYPE=SIDE_SLIDER";
240}
241?>
242<form method="POST" action="<? echo $APPLICATION->GetCurPage().$actionParams; ?>" ENCTYPE="multipart/form-data" name="dataload">
243<?
245 array("DIV" => "edit1", "TAB" => GetMessage("CAT_ADM_CSV_EXP_TAB1"), "ICON" => "store", "TITLE" => GetMessage("CAT_ADM_CSV_EXP_TAB1_TITLE")),
246 array("DIV" => "edit2", "TAB" => GetMessage("CAT_ADM_CSV_EXP_TAB2"), "ICON" => "store", "TITLE" => GetMessage("CAT_ADM_CSV_EXP_TAB2_TITLE")),
247 array("DIV" => "edit3", "TAB" => GetMessage("CAT_ADM_CSV_EXP_TAB3"), "ICON" => "store", "TITLE" => GetMessage("CAT_ADM_CSV_EXP_TAB3_TITLE")),
248);
249
250$tabControl = new CAdminTabControl("tabControl", $aTabs, false, true);
251$tabControl->Begin();
252
253$tabControl->BeginNextTab();
254
255if ($STEP==1)
256{
257 ?><tr class="heading">
258 <td colspan="2"><? echo GetMessage("CATI_DATA_EXPORT"); ?></td>
259 </tr>
260 <tr>
261 <td valign="top" width="40%"><? echo GetMessage("CAT_ADM_CSV_EXP_IBLOCK_ID"); ?>:</td>
262 <td valign="top" width="60%"><?
263 if (!isset($IBLOCK_ID))
264 $IBLOCK_ID = 0;
267 'IBLOCK_TYPE_ID',
268 'IBLOCK_ID',
269 array('CHECK_PERMISSIONS' => 'Y','MIN_PERMISSION' => 'W'),
270 '',
271 '',
272 'class="adm-detail-iblock-types"',
273 'class="adm-detail-iblock-list"'
274 );
275 ?></td>
276 </tr><?
277}
278
279$tabControl->EndTab();
280
281$tabControl->BeginNextTab();
282
283if ($STEP == 2)
284{
285 ?><tr class="heading">
286 <td colspan="2"><?echo GetMessage("CATI_FORMAT_PROPS") ?></td>
287 </tr>
288 <tr>
289 <td valign="top" width="40%"><?echo GetMessage("CATI_DELIMITERS") ?>:</td>
290 <td valign="top" width="60%"><?
291 if (!isset($delimiter_r) || empty($delimiter_r))
292 $delimiter_r = 'TZP';
293 ?><input type="hidden" name="fields_type" value="R">
294 <input type="radio" name="delimiter_r" value="TZP" <?if ($delimiter_r=="TZP") echo "checked"; ?>><? echo GetMessage("CATI_TZP"); ?><br>
295 <input type="radio" name="delimiter_r" value="ZPT" <?if ($delimiter_r=="ZPT") echo "checked"?>><?echo GetMessage("CATI_ZPT") ?><br>
296 <input type="radio" name="delimiter_r" value="TAB" <?if ($delimiter_r=="TAB") echo "checked"?>><?echo GetMessage("CATI_TAB") ?><br>
297 <input type="radio" name="delimiter_r" value="SPS" <?if ($delimiter_r=="SPS") echo "checked"?>><?echo GetMessage("CATI_SPS") ?><br>
298 <input type="radio" name="delimiter_r" value="OTR" <?if ($delimiter_r=="OTR") echo "checked"?>><?echo GetMessage("CATI_OTR") ?>
299 <input type="text" class="typeinput" name="delimiter_other_r" size="3" value="<?echo htmlspecialcharsbx($delimiter_other_r); ?>">
300 </td>
301 </tr>
302 <tr>
303 <td valign="top" width="40%"><label for="first_line_names_Y"><?echo GetMessage("CATI_FIRST_LINE_NAMES") ?>:</label></td>
304 <td valign="top" width="60%"><?
305 if (!isset($first_line_names))
306 $first_line_names = 'Y';
307 ?><input type="hidden" name="first_line_names" id="first_line_names_N" value="N">
308 <input type="checkbox" name="first_line_names" id="first_line_names_Y" value="Y" <?if ($first_line_names=="Y") echo "checked"?>>
309 </td>
310 </tr>
311 <tr class="heading">
312 <td colspan="2"><?echo GetMessage("CATI_FIELDS") ?></td>
313 </tr>
314 <tr>
315 <td colspan="2">
316 <table width="100%" border="0" cellspacing="0" cellpadding="0" class="internal">
317 <?
318 $boolCatalog = false;
320 if (!empty($arCatalog))
321 $boolCatalog = true;
322
323 $arAvailFields = array();
324 $intCount = 0;
325 $boolSep = true;
326
327 $strVal = COption::GetOptionString("catalog", "allowed_product_fields", $defCatalogAvailProdFields);
328 $arVal = explode(",", $strVal);
329 foreach ($arCatalogAvailProdFields as &$arOneCatalogAvailProdFields_tmp)
330 {
331 $mxKey = array_search($arOneCatalogAvailProdFields_tmp['value'],$arVal);
332 if (false !== $mxKey)
333 {
334 $arAvailFields[$intCount] = array(
335 "value"=>$arOneCatalogAvailProdFields_tmp["value"],
336 "name"=>$arOneCatalogAvailProdFields_tmp["name"],
337 'sort' => ($intCount+1)*10,
338 );
339 if ($boolSep)
340 {
341 $arAvailFields[$intCount]['SEP'] = GetMessage('CAT_ADM_CSV_EXP_SEP_ELEMENTS');
342 $boolSep = false;
343 }
344 $intCount++;
345 }
346 }
347 if (isset($arOneCatalogAvailProdFields_tmp))
348 unset($arOneCatalogAvailProdFields_tmp);
349
350 $properties = CIBlockProperty::GetList(array("SORT"=>"ASC", "ID"=>"ASC"), array("IBLOCK_ID"=>$IBLOCK_ID, "ACTIVE"=>"Y", 'CHECK_PERMISSIONS' => 'N'));
351 while ($prop_fields = $properties->Fetch())
352 {
353 $arAvailFields[$intCount] = array(
354 "value"=>"IP_PROP".$prop_fields["ID"],
355 "name"=>GetMessage("CATI_FI_PROPS").' "'.$prop_fields["NAME"].'"'.' ['.(''!= trim($prop_fields["CODE"]) ? $prop_fields["CODE"] : $prop_fields["ID"]).']',
356 'sort' => ($intCount+1)*10,
357 );
358 if ($boolSep)
359 {
360 $arAvailFields[$intCount]['SEP'] = GetMessage('CAT_ADM_CSV_EXP_SEP_ELEMENTS');
361 $boolSep = false;
362 }
363 $intCount++;
364 }
365
366 $boolSep = true;
367 $strVal = COption::GetOptionString("catalog", "allowed_group_fields", $defCatalogAvailGroupFields);
368 $arVal = explode(",", $strVal);
369 for ($k_old = -1, $k = 0; $k < $NUM_CATALOG_LEVELS; $k++)
370 {
371 foreach ($arCatalogAvailGroupFields as &$arOnerCatalogAvailGroupFields)
372 {
373 $mxKey = array_search($arOnerCatalogAvailGroupFields['value'],$arVal);
374 if (false !== $mxKey)
375 {
376 $arAvailFields[$intCount] = array(
377 "value"=>$arOnerCatalogAvailGroupFields["value"].$k,
378 "name"=> $arOnerCatalogAvailGroupFields["name"],
379 'sort' => ($intCount+1)*10,
380 );
381 if ($boolSep)
382 {
383 $arAvailFields[$intCount]['SEP'] = GetMessage('CAT_ADM_CSV_EXP_SEP_SECTIONS');
384 $boolSep = false;
385 }
386 if ($k_old != $k)
387 {
388 $arAvailFields[$intCount]['SUB_SEP'] = str_replace('#LEVEL#',($k+1),GetMessage("CAT_ADM_CSV_EXP_SECTION_LEVEL"));
389 $k_old = $k;
390 }
391 $intCount++;
392 }
393 }
394 if (isset($arOnerCatalogAvailGroupFields))
395 unset($arOnerCatalogAvailGroupFields);
396 }
397
398 if ($boolCatalog)
399 {
400 $boolSep = true;
401 $strVal = COption::GetOptionString("catalog", "allowed_product_fields", $defCatalogAvailPriceFields);
402 $arVal = explode(",", $strVal);
403 foreach ($arCatalogAvailPriceFields as &$arOneCatalogAvailProdFields_tmp)
404 {
405 $mxKey = array_search($arOneCatalogAvailProdFields_tmp['value'],$arVal);
406 if (false !== $mxKey)
407 {
408 $arAvailFields[$intCount] = array(
409 "value"=>$arOneCatalogAvailProdFields_tmp["value"],
410 "name"=>$arOneCatalogAvailProdFields_tmp["name"],
411 'sort' => ($intCount+1)*10,
412 );
413 if ($boolSep)
414 {
415 $arAvailFields[$intCount]['SEP'] = GetMessage('CAT_ADM_CSV_EXP_SEP_PRODUCT');
416 $boolSep = false;
417 }
418 $intCount++;
419 }
420 }
421 if (isset($arOneCatalogAvailProdFields_tmp))
422 unset($arOneCatalogAvailProdFields_tmp);
423
424 $boolSep = true;
426 $arVal = explode(",", $strVal);
427 foreach ($arCatalogAvailQuantityFields as &$arOneCatalogAvailQuantityFields)
428 {
429 $mxKey = array_search($arOneCatalogAvailQuantityFields['value'],$arVal);
430 if (false !== $mxKey)
431 {
432 $arAvailFields[$intCount] = array(
433 "value"=>$arOneCatalogAvailQuantityFields["value"],
434 "name"=>$arOneCatalogAvailQuantityFields["name"],
435 'sort' => ($intCount+1)*10,
436 );
437 if ($boolSep)
438 {
439 $arAvailFields[$intCount]['SEP'] = GetMessage('CAT_ADM_CSV_EXP_SEP_PRICES');
440 $boolSep = false;
441 }
442 $intCount++;
443 }
444 }
445 if (isset($arOneCatalogAvailQuantityFields))
446 unset($arOneCatalogAvailQuantityFields);
447
448 $strVal = COption::GetOptionString("catalog", "allowed_currencies", $defCatalogAvailCurrencies);
449 $arVal = explode(",", $strVal);
450 $lcur = CCurrency::GetList('sort', 'asc');
451 $arCurList = array();
452 while ($lcur_res = $lcur->Fetch())
453 {
454 if (in_array($lcur_res["CURRENCY"], $arVal))
455 {
456 $arCurList[] = array(
457 'ID' => $lcur_res["CURRENCY"],
458 'DESCR' => str_replace('#CURRENCY#', $lcur_res["CURRENCY"], GetMessage('CATI_FI_PRICE_CURRENCY')),
459 );
460 }
461 }
462
463 if (!empty($arCurList))
464 {
465 $db_prgr = CCatalogGroup::GetList(array("SORT" => "ASC"), array());
466 while ($prgr = $db_prgr->Fetch())
467 {
468 foreach ($arCurList as &$arCurrency)
469 {
470 $strName = ($prgr['NAME_LANG'] ?
471 str_replace(array('#TYPE#','#NAME#'),array($prgr["NAME"],$prgr['NAME_LANG']),GetMessage('CATI_FI_PRICE_TYPE3')):
472 str_replace("#TYPE#", $prgr["NAME"], GetMessage("CATI_FI_PRICE_TYPE2"))
473 );
474 $arAvailFields[$intCount] = array(
475 "value" => "CR_PRICE_".$prgr["ID"]."_".$arCurrency['ID'],
476 "name" => $strName.' '.$arCurrency['DESCR'],
477 'sort' => ($intCount+1)*10,
478 );
479 if ($boolSep)
480 {
481 $arAvailFields[$intCount]['SEP'] = GetMessage('CAT_ADM_CSV_EXP_SEP_PRICES');
482 $boolSep = false;
483 }
484 $intCount++;
485 }
486 unset($arCurrency);
487 }
488 }
489 }
490
491 $intCountAvailFields = $intCount;
492 $intCountChecked = 0;
493 $arCheckID = array();
494 $boolAll = true;
495
496 if (!empty($field_code) && is_array($field_code))
497 {
498 foreach ($arAvailFields as $i => $arOneAvailField)
499 {
500 $intSort = 0;
501 $key = array_search($arOneAvailField['value'], $field_code);
502 if (false !== $key)
503 {
504 if (isset($field_needed[$key]) && 'Y' == $field_needed[$key])
505 {
506 $boolAll = false;
507 $arCheckID[] = $arOneAvailField['value'];
508 $intCountChecked++;
509 }
510 if (isset($field_num[$key]) && 0 < intval($field_num[$key]))
511 $intSort = intval($field_num[$key]);
512 }
513 if (0 < $intSort)
514 $arAvailFields[$i]['sort'] = $intSort;
515 }
516 }
517 if ($boolAll)
518 $intCountChecked = $intCountAvailFields;
519
520 ?><tr class="heading">
521 <td valign="middle" align="left" style="text-align: left;">
522 <input style="vertical-align: middle;" type="checkbox" name="field_needed_all" id="field_needed_all" value="Y" onclick="checkAll(this,<? echo $intCountAvailFields; ?>);"<? echo ($boolAll || ($intCountChecked == $intCountAvailFields) ? ' checked' : ''); ?>>&nbsp;
523 <b><?echo GetMessage("CATI_FIELDS_NEEDED") ?></b></td>
524 <td valign="middle" align="center"><b><?echo GetMessage("CATI_FIELDS_NAMES") ?></b></td>
525 <td valign="middle" align="center"><b><?echo GetMessage("CATI_FIELDS_SORTING") ?></b></td>
526 </tr><?
527 foreach ($arAvailFields as $i => $arOneAvailField)
528 {
529 if (!empty($arOneAvailField['SEP']))
530 {
531 ?><tr><td colspan="3" valign="middle" align="center"><b><? echo htmlspecialcharsbx($arOneAvailField['SEP']); ?></b></td></tr><?
532 }
533 if (!empty($arOneAvailField['SUB_SEP']))
534 {
535 ?><tr><td>&nbsp;</td><td valign="middle" align="left"><b><? echo htmlspecialcharsbx($arOneAvailField['SUB_SEP']); ?></b></td><td>&nbsp;</td></tr><?
536 }
537 ?>
538 <tr>
539 <td valign="top" align="left"><input type="checkbox" name="field_needed[<? echo $i; ?>]" id="field_needed_<? echo $i; ?>"
540 <?if ($boolAll || in_array($arOneAvailField['value'],$arCheckID)) echo "checked"; ?>
541 value="Y" onclick="checkOne(this,<? echo $intCountAvailFields; ?>);"></td>
542 <td valign="middle" align="left">
543 <?if ($i<2) echo "<b>";?>
544 <?echo htmlspecialcharsbx($arOneAvailField["name"]); ?>
545 <?if ($i<2) echo "</b>";?>
546 </td>
547 <td valign="top" align="center">
548 <?if ($i<2) echo "<b>";?>
549 <input type="text" class="typeinput" name="field_num[<?echo $i ?>]" value="<?echo $arOneAvailField['sort']; ?>" size="4"> <input type="hidden" name="field_code[<?echo $i ?>]"
550 value="<?echo htmlspecialcharsbx($arOneAvailField["value"]) ?>">
551 <?if ($i<2) echo "</b>";?>
552 </td>
553 </tr>
554 <?
555 }
556
557 ?></table>
558 <input type="hidden" name="count_checked" id="count_checked" value="<? echo $intCountChecked; ?>">
559 <script>
560 function checkAll(obj,cnt)
561 {
562 var boolCheck = obj.checked;
563 for (i = 0; i < cnt; i++)
564 {
565 BX('field_needed_'+i).checked = boolCheck;
566 }
567 BX('count_checked').value = (boolCheck ? cnt : 0);
568 }
569 function checkOne(obj,cnt)
570 {
571 var boolCheck = obj.checked;
572 var intCurrent = parseInt(BX('count_checked').value);
573 intCurrent += (boolCheck ? 1 : -1);
574 BX('field_needed_all').checked = (intCurrent >= cnt);
575 BX('count_checked').value = intCurrent;
576 }
577 </script>
578 </td>
579 </tr>
580 <tr class="heading">
581 <td colspan="2"><?echo GetMessage("CATI_DATA_FILE_NAME") ?></td>
582 </tr>
583 <tr>
584 <td valign="top" width="40%"><? echo GetMessage("CATI_DATA_FILE_NAME1") ?>:</td>
585 <td valign="top" width="60%"><b><? echo htmlspecialcharsex($strCatalogDefaultFolder); ?></b>
586 <input type="text" class="typeinput" name="SETUP_FILE_NAME" size="40" value="<?echo htmlspecialcharsbx($SETUP_FILE_NAME <> '' ? str_replace($strCatalogDefaultFolder, '', $SETUP_FILE_NAME): "export_file_".mt_rand(0, 999999).".csv");?>"><br>
587 <small><?echo GetMessage("CATI_DATA_FILE_NAME1_DESC") ?></small>
588 </td>
589 </tr>
590 <?if ($ACTION == "EXPORT_SETUP" || $ACTION == 'EXPORT_EDIT' || $ACTION == 'EXPORT_COPY')
591 {
592 ?><tr class="heading">
593 <td colspan="2"><?echo GetMessage("CATI_SAVE_SCHEME") ?></td>
594 </tr>
595 <tr>
596 <td valign="top" width="40%"><?echo GetMessage("CATI_SSCHEME_NAME") ?>:</td>
597 <td valign="top" width="60%"><input type="text" class="typeinput" name="SETUP_PROFILE_NAME" size="40"
598 value="<?echo htmlspecialcharsbx($SETUP_PROFILE_NAME)?>"></td>
599 </tr><?
600 }
601}
602
603$tabControl->EndTab();
604
605$tabControl->BeginNextTab();
606
607if ($STEP == 3)
608{
609 $FINITE = true;
610}
611
612$tabControl->EndTab();
613
614$tabControl->Buttons();
615
616?><? echo bitrix_sessid_post(); ?>
617<?if ($ACTION == 'EXPORT_EDIT' || $ACTION == 'EXPORT_COPY')
618{
619 ?><input type="hidden" name="PROFILE_ID" value="<? echo intval($PROFILE_ID); ?>"><?
620}
621
622if ($STEP < 3)
623{
624 ?><input type="hidden" name="STEP" value="<? echo intval($STEP)+1; ?>">
625 <input type="hidden" name="lang" value="<? echo LANGUAGE_ID; ?>">
626 <input type="hidden" name="ACT_FILE" value="<? echo htmlspecialcharsbx($_REQUEST["ACT_FILE"]); ?>">
627 <input type="hidden" name="ACTION" value="<? echo htmlspecialcharsbx($ACTION); ?>">
628 <?if ($STEP > 1)
629 {
630 ?><input type="hidden" name="IBLOCK_ID" value="<? echo intval($IBLOCK_ID); ?>">
631 <input type="hidden" name="SETUP_FIELDS_LIST" value="IBLOCK_ID,SETUP_FILE_NAME,fields_type,delimiter_r,delimiter_other_r,first_names_r,first_line_names,field_needed,field_num,field_code"><?
632 }
633 if ($STEP > 1)
634 {
635 ?><input type="submit" class="button" name="backButton" value="&lt;&lt; <?echo GetMessage("CATI_BACK") ?>"><?
636 }
637 ?><input type="submit" class="button" value="<?echo ($STEP == 2)?(($ACTION == "EXPORT")?GetMessage("CATI_NEXT_STEP_F"):GetMessage("CET_SAVE")):GetMessage("CATI_NEXT_STEP")." &gt;&gt;" ?>" name="submit_btn"><?
638}
639$tabControl->End();
640
641?></form>
642<script>
643<?if ($STEP < 2):?>
644tabControl.SelectTab("edit1");
645tabControl.DisableTab("edit2");
646tabControl.DisableTab("edit3");
647<?elseif ($STEP == 2):?>
648tabControl.SelectTab("edit2");
649tabControl.DisableTab("edit1");
650tabControl.DisableTab("edit3");
651<?elseif ($STEP == 3):?>
652tabControl.SelectTab("edit3");
653tabControl.DisableTab("edit1");
654tabControl.DisableTab("edit2");
655<?endif;?>
656</script>
global $APPLICATION
Определения include.php:80
const BX_CATALOG_FILENAME_REG
Определения include.php:51
const CATALOG_DEFAULT_EXPORT_PATH
Определения include.php:14
$strVal
Определения options.php:1786
$arVal
Определения options.php:1785
static GetByID($ID)
Определения catalog.php:281
static GetList($by='sort', $order='asc', $lang=LANGUAGE_ID)
Определения currency.php:554
static GetList($arOrder=Array(), $arFilter=Array())
Определения iblockproperty.php:14
static GetOptionString($module_id, $name, $def="", $site=false, $bExactSite=false)
Определения option.php:8
static GetList($arOrder=array(), $arFilter=array(), $arGroupBy=false, $arNavStartParams=false, $arSelectFields=array())
Определения cataloggroup.php:218
static GetList($arOrder=Array("SORT"=>"ASC"), $arFilter=Array(), $bIncCnt=false)
Определения iblock.php:13
else $SETUP_FILE_NAME
Определения ebay_mip_run.php:56
& nbsp
Определения epilog_main_admin.php:38
bx popup label bx width30 PAGE_NEW_MENU_NAME text width
Определения file_new.php:677
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
GetIBlockDropDownListEx($IBLOCK_ID, $strTypeName, $strIBlockName, $arFilter=false, $onChangeType='', $onChangeIBlock='', $strAddType='', $strAddIBlock='')
Определения iblock.php:632
global $adminSidePanelHelper
Определения init_admin.php:7
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
global $arCatalogAvailPriceFields
Определения cron_frame.php:84
global $defCatalogAvailValueFields
Определения cron_frame.php:97
global $arCatalogAvailQuantityFields
Определения cron_frame.php:88
global $defCatalogAvailProdFields
Определения cron_frame.php:93
global $defCatalogAvailQuantityFields
Определения cron_frame.php:99
global $arCatalogAvailProdFields
Определения cron_frame.php:82
global $defCatalogAvailCurrencies
Определения cron_frame.php:103
global $arCatalogAvailGroupFields
Определения cron_frame.php:90
global $arCatalogAvailValueFields
Определения cron_frame.php:86
global $defCatalogAvailPriceFields
Определения cron_frame.php:95
global $defCatalogAvailGroupFields
Определения cron_frame.php:101
$IBLOCK_ID
Определения csv_new_run.php:168
if(!($arIBlock=$arIBlockres->Fetch())) $boolCatalog
Определения csv_new_run.php:182
global $USER
Определения csv_new_run.php:40
$NUM_CATALOG_LEVELS
Определения csv_new_run.php:124
if(!CCatalog::IsUserExists()) if(!function_exists( '__CSVArrayMultiply')) if(!function_exists('__CSVExportFile')) $strCatalogDefaultFolder
Определения csv_new_run.php:122
$tabControl
Определения csv_new_setup.php:244
$aTabs
Определения csv_new_setup.php:238
$STEP
Определения csv_new_setup.php:23
$ACTION
Определения csv_new_setup.php:27
$actionParams
Определения csv_new_setup.php:230
if(( $ACTION=='EXPORT_EDIT'||$ACTION=='EXPORT_COPY') &&$STEP==1) if($STEP > 1) if(( $ACTION=='EXPORT_EDIT'||$ACTION=='EXPORT_COPY') &&$STEP==2) if($STEP >2) $aMenu
Определения csv_new_setup.php:214
$context
Определения csv_new_setup.php:223
$arSetupErrors
Определения csv_new_setup.php:19
endif
Определения csv_new_setup.php:990
bitrix_sessid_post($varname='sessid', $returnInvocations=false)
Определения tools.php:4700
CheckDirPath($path)
Определения tools.php:2707
HasScriptExtension($check_name)
Определения tools.php:2956
ShowError($strError, $cls="errortext")
Определения tools.php:4499
htmlspecialcharsbx($string, $flags=ENT_COMPAT, $doubleEncode=true)
Определения tools.php:2701
IncludeModuleLangFile($filepath, $lang=false, $bReturnArray=false)
Определения tools.php:3778
GetMessage($name, $aReplace=null)
Определения tools.php:3397
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
Определения prolog_main_admin.php:393
if(empty($signedUserToken)) $key
Определения quickway.php:257
$i
Определения factura.php:643
font style
Определения invoice.php:442
font size
Определения invoice.php:442
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
Определения waybill.php:936
text align
Определения template.php:556
& gt
Определения settings_admin_form.php:134
$k
Определения template_pdf.php:567
$rsIBlocks
Определения yandex_detail.php:58
$arIBlock['PROPERTY']
Определения yandex_detail.php:172
$arCatalog
Определения yandex_run.php:674