4 include_once
'Services/Form/classes/class.ilPropertyFormGUI.php';
5 include_once
'./Services/Utilities/classes/class.ilConfirmationGUI.php';
6 include_once
'./Services/Payment/classes/class.ilShopTableGUI.php';
22 $this->ctrl->saveParameter($this,
'baseClass');
35 $ilTabs->setTabActive(
'paya_header');
36 $ilTabs->setSubTabActive(
'paya_coupons_coupons');
41 $cmd = $this->ctrl->getCmd();
42 switch ($this->ctrl->getNextClass($this))
45 if (!
$cmd = $this->ctrl->getCmd())
58 unset(
$_POST[
"title_type"]);
59 unset(
$_POST[
"title_value"]);
60 unset(
$_POST[
"coupon_type"]);
61 unset(
$_POST[
"updateView"]);
62 unset(
$_POST[
'from_check']);
63 unset(
$_POST[
'until_check']);
74 include_once(
"Services/User/classes/class.ilObjUser.php");
76 $ilToolbar->addButton($this->lng->txt(
'paya_coupons_add'), $this->ctrl->getLinkTarget($this,
'addCoupon'));
77 if(!
$_POST[
'show_filter'] &&
$_POST[
'updateView'] ==
'1')
82 if (
$_POST[
'updateView'] == 1)
85 $_SESSION[
'pay_coupons'][
'updateView'] =
true;
91 if(
$_SESSION[
'pay_coupons'][
'from_check'] ==
'1')
93 $_SESSION[
'pay_coupons'][
'from'][
'date'][
'd'] =
$_POST[
'from'][
'date'][
'd'];
94 $_SESSION[
'pay_coupons'][
'from'][
'date'][
'm'] =
$_POST[
'from'][
'date'][
'm'];
95 $_SESSION[
'pay_coupons'][
'from'][
'date'][
'y'] =
$_POST[
'from'][
'date'][
'y'];
99 $_SESSION[
'pay_coupons'][
'from'][
'date'][
'd'] =
'';
100 $_SESSION[
'pay_coupons'][
'from'][
'date'][
'm'] =
'';
101 $_SESSION[
'pay_coupons'][
'from'][
'date'][
'y'] =
'';
104 if(
$_SESSION[
'pay_coupons'][
'until_check']==
'1')
106 $_SESSION[
'pay_coupons'][
'til'][
'date'][
'd'] =
$_POST[
'til'][
'date'][
'd'];
107 $_SESSION[
'pay_coupons'][
'til'][
'date'][
'm'] =
$_POST[
'til'][
'date'][
'm'];
108 $_SESSION[
'pay_coupons'][
'til'][
'date'][
'y'] =
$_POST[
'til'][
'date'][
'y'];
112 $_SESSION[
'pay_coupons'][
'til'][
'date'][
'd'] =
'';
113 $_SESSION[
'pay_coupons'][
'til'][
'date'][
'm'] =
'';
114 $_SESSION[
'pay_coupons'][
'til'][
'date'][
'y'] =
'';
125 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.main_view.html',
'Services/Payment');
128 $filter_form->setFormAction($this->ctrl->getFormAction($this));
129 $filter_form->setTitle($this->lng->txt(
'pay_filter'));
130 $filter_form->setId(
'formular');
131 $filter_form->setTableWidth(
'100 %');
133 $o_hide_check =
new ilCheckBoxInputGUI($this->lng->txt(
'show_filter'),
'show_filter');
134 $o_hide_check->setValue(1);
135 $o_hide_check->setChecked(
$_SESSION[
'pay_coupons'][
'show_filter'] ? 1 : 0);
138 $o_hidden->setValue(1);
139 $o_hidden->setPostVar(
'updateView');
140 $o_hide_check->addSubItem($o_hidden);
144 $title_option = array($this->lng->txt(
'pay_starting'),$this->lng->txt(
'pay_ending'));
145 $title_value = array(
'0',
'1');
146 $o_title_type->setTitle($this->lng->txt(
'title'));
147 $o_title_type->setOptions($title_option);
148 $o_title_type->setValue(
$_SESSION[
'pay_coupons'][
'title_type']);
149 $o_title_type->setPostVar(
'title_type');
150 $o_hide_check->addSubItem($o_title_type);
154 $o_title_val->setValue(
$_SESSION[
'pay_coupons'][
'title_value']);
155 $o_title_val->setPostVar(
'title_value');
156 $o_hide_check->addSubItem($o_title_val);
160 $coupon_option = array(
''=>
'',
'fix'=>$this->lng->txt(
'paya_coupons_fix'),
'percent'=>$this->lng->txt(
'paya_coupons_percentaged'));
162 $o_coupon_type->setTitle($this->lng->txt(
'coupon_type'));
163 $o_coupon_type->setOptions($coupon_option);
164 $o_coupon_type->setValue(
$_SESSION[
'pay_coupons'][
'coupon_type']);
165 $o_coupon_type->setPostVar(
'coupon_type');
167 $o_hide_check->addSubItem($o_coupon_type);
170 $o_from_check =
new ilCheckBoxInputGUI($this->lng->txt(
'pay_order_date_from'),
'from_check');
171 $o_from_check->setValue(1);
172 $o_from_check->setChecked(
$_SESSION[
'pay_coupons'][
'from_check'] ? 1 : 0);
175 $o_date_from->setPostVar(
'from');
177 if(
$_SESSION[
'pay_coupons'][
'from_check'] ==
'1')
179 $o_date_from->checkInput();
182 $o_from_check->addSubItem($o_date_from);
183 $o_hide_check->addSubItem($o_from_check);
186 $o_until_check =
new ilCheckBoxInputGUI($this->lng->txt(
'pay_order_date_til'),
'until_check');
187 $o_until_check->setValue(1);
188 $o_until_check->setChecked(
$_SESSION[
'pay_coupons'][
'until_check'] ? 1 : 0);
191 $o_date_until->setPostVar(
'til');
193 if(
$_SESSION[
'pay_coupons'][
'until_check'] ==
'1')
195 $o_date_until->checkInput();
198 $o_until_check->addSubItem($o_date_until);
199 $o_hide_check->addSubItem($o_until_check);
201 $filter_form->addCommandButton(
'showCoupons', $this->lng->txt(
'pay_update_view'));
202 $filter_form->addCommandButton(
'resetFilter', $this->lng->txt(
'pay_reset_filter'));
204 $filter_form->addItem($o_hide_check);
206 $this->tpl->setVariable(
'FORM', $filter_form->getHTML());
208 if (!count($coupons = $this->coupon_obj->getCoupons()))
218 foreach ($coupons as $coupon)
220 $f_result[$counter][
'pc_title'] = $coupon[
'pc_title'];
221 $f_result[$counter][
'number_of_codes'] = $coupon[
'number_of_codes'];
222 $f_result[$counter][
'usage_of_codes'] = $coupon[
'usage_of_codes'];
224 if (!empty($coupon[
'objects']))
227 for ($i = 0; $i < count($coupon[
'objects']); $i++)
232 $objects .= $tmp_obj->getTitle();
236 $objects .= $this->lng->txt(
'object_not_found');
239 if ($i < count($coupon[
'objects']) - 1) $objects .=
"<br />";
249 $f_result[$counter][
'objects'] = $objects;
250 $f_result[$counter][
'pc_from'] = ($coupon[
'pc_from'] != NULL && $coupon[
'pc_from_enabled'] ==
'1') ? $coupon[
'pc_from'] :
'';
251 $f_result[$counter][
'pc_till'] = ($coupon[
'pc_till'] != NULL && $coupon[
'pc_till_enabled'] ==
'1') ? $coupon[
'pc_till'] :
'';
252 $f_result[$counter][
'pc_last_changed'] = ($coupon[
'pc_last_changed'] != NULL ? $coupon[
'pc_last_changed'] :
'');
253 $f_result[$counter][
'pc_last_changed_author'] = ($coupon[
'pc_last_change_usr_id'] > 0 ?
ilObjUser::_lookupLogin($coupon[
'pc_last_change_usr_id']) : ilObjUser::_lookupLogin($coupon[
'usr_id']));
254 $this->ctrl->setParameter($this,
'coupon_id', $coupon[
'pc_pk']);
255 $f_result[$counter][
'options'] =
"<div class=\"il_ContainerItemCommands\"><a class=\"il_ContainerItemCommand\" href=\"".$this->ctrl->getLinkTarget($this,
"addCoupon").
"\">".$this->lng->txt(
"edit").
"</a>";
256 $f_result[$counter][
'options'] .=
" <a class=\"il_ContainerItemCommand\" href=\"".$this->ctrl->getLinkTarget($this,
"deleteCoupon").
"\">".$this->lng->txt(
"delete").
"</a></div>";
266 require_once
'Services/Payment/classes/class.ilShopCouponsTableGUI.php';
268 $tbl->setTitle($this->lng->txt(
"paya_coupons_coupons"));
269 $tbl->setId(
'tbl_show_coupons');
270 $tbl->setRowTemplate(
"tpl.shop_coupons_row.html",
"Services/Payment");
272 $tbl->addColumn($this->lng->txt(
'paya_coupons_title'),
'pc_title',
'10%');
273 $tbl->addColumn($this->lng->txt(
'paya_coupons_number_of_codes'),
'number_of_codes',
'10%');
274 $tbl->addColumn($this->lng->txt(
'paya_coupons_usage_of_codes'),
'usage_of_codes',
'10%');
275 $tbl->addColumn($this->lng->txt(
'paya_coupons_objects'),
'objects',
'10%');
276 $tbl->addColumn($this->lng->txt(
'paya_coupons_from'),
'pc_from',
'10%');
277 $tbl->addColumn($this->lng->txt(
'paya_coupons_till'),
'pc_till',
'10%');
278 $tbl->addColumn($this->lng->txt(
'last_change'),
'pc_last_changed',
'10%');
279 $tbl->addColumn($this->lng->txt(
'author'),
'pc_last_changed_author',
'10%');
280 $tbl->addColumn(
'',
'options',
'30%');
282 $tbl->setData($f_result);
283 $this->tpl->setVariable(
'TABLE', $tbl->getHTML());
292 if (
$_POST[
'title'] ==
'') $this->error .=
'paya_coupons_title,';
293 if (
$_POST[
'coupon_type'] ==
'') $this->error .=
'paya_coupons_type,';
294 if (
$_POST[
'coupon_value'] ==
'') $this->error .=
'paya_coupons_value,';
297 $this->coupon_obj->setId(
$_GET[
'coupon_id']);
298 $this->coupon_obj->setCouponUser($this->user_obj->getId());
303 $this->coupon_obj->setFromDate( date(
"Y-m-d",mktime(0,0,0,
$_POST[
'from'][
'date'][
'm'],
$_POST[
'from'][
'date'][
'd'],
$_POST[
'from'][
'date'][
'y'])));
304 $this->coupon_obj->setTillDate( date(
"Y-m-d",mktime(0,0,0,
$_POST[
'til'][
'date'][
'm'],
$_POST[
'til'][
'date'][
'd'],
$_POST[
'til'][
'date'][
'y'])));
308 $this->coupon_obj->setFromDateEnabled(
$_POST[
'from_check']);
309 $this->coupon_obj->setTillDateEnabled(
$_POST[
'until_check']);
311 $this->coupon_obj->setChangeDate(date(
'Y-m-d H:i:s'));
313 if ($this->error ==
'')
315 if (
$_GET[
'coupon_id'] !=
"")
317 $this->coupon_obj->update();
321 $_GET[
'coupon_id'] = $this->coupon_obj->add();
328 if (is_array($e = explode(
',', $this->error)))
331 for ($i = 0; $i < count($e); $i++)
333 $e[$i] = trim($e[$i]);
336 $mandatory .= $this->lng->txt($e[$i]);
337 if (array_key_exists($i + 1, $e) && $e[$i + 1] !=
'') $mandatory .=
', ';
340 ilUtil::sendInfo($this->lng->txt(
'fill_out_all_required_fields') .
': ' . $mandatory);
351 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.main_view.html',
'Services/Payment');
353 if (isset(
$_GET[
'coupon_id']))
355 if ($this->error ==
'') $this->coupon_obj->getCouponById(
$_GET[
'coupon_id']);
357 $this->ctrl->setParameter($this,
'coupon_id', $this->coupon_obj->getId());
364 $oForm->setId(
'frm_add_coupon');
365 $oForm->setFormAction($this->ctrl->getFormAction($this,
'saveCouponForm'));
366 $oForm->setTitle($this->coupon_obj->getId() ? $this->lng->txt(
'paya_coupons_edit') : $this->lng->txt(
'paya_coupons_add'));
369 $oTitle =
new ilTextInputGUI($this->lng->txt(paya_coupons_title),
'title');
370 $oTitle->
setValue($this->coupon_obj->getTitle());
371 $oTitle->setRequired(
true);
372 $oForm->addItem($oTitle);
375 $oDescription =
new ilTextAreaInputGUI($this->lng->txt(paya_coupons_description),
'description');
376 $oDescription->
setValue($this->coupon_obj->getDescription());
377 $oForm->addItem($oDescription);
381 $coupon_option = array(
'fix'=>$this->lng->txt(
'paya_coupons_fix'),
'percent'=>$this->lng->txt(
'paya_coupons_percentaged'));
383 $o_coupon_type->setTitle($this->lng->txt(
'coupon_type'));
384 $o_coupon_type->setOptions($coupon_option);
385 $o_coupon_type->setValue($this->coupon_obj->getType());
386 $o_coupon_type->setRequired(
true);
387 $o_coupon_type->setPostVar(
'coupon_type');
389 $oForm->addItem($o_coupon_type);
393 $o_coupon_value =
new ilNumberInputGUI($this->lng->txt(
'paya_coupons_value'),
'coupon_value');
395 $o_coupon_value->allowDecimals(
true);
396 $o_coupon_value->setValue($this->coupon_obj->getValue());
398 $o_coupon_value->setRequired(
true);
399 $oForm->addItem($o_coupon_value);
402 $o_from_check =
new ilCheckBoxInputGUI($this->lng->txt(
'paya_coupons_from'),
'from_check');
403 $o_from_check->setValue(1);
404 $o_from_check->setChecked($this->coupon_obj->getFromDateEnabled() ? 1 : 0);
407 $o_date_from->setPostVar(
'from');
409 $from_date = explode(
'-', $this->coupon_obj->getFromDate());
410 $date_f[
'from'][
'date'][
'd'] = $from_date[2] !=
'00' ? $from_date[2] :
'';
411 $date_f[
'from'][
'date'][
'm'] = $from_date[1] !=
'00' ? $from_date[1] :
'';
412 $date_f[
'from'][
'date'][
'y'] = $from_date[0] !=
'0000' ? $from_date[0] :
'';
414 $_POST[
'from'] = $date_f[
'from'];
415 if($this->coupon_obj->getFromDateEnabled() ==
'1')
417 $o_date_from->checkInput();
420 $o_from_check->addSubItem($o_date_from);
421 $oForm->addItem($o_from_check);
424 $o_until_check =
new ilCheckBoxInputGUI($this->lng->txt(
'paya_coupons_till'),
'until_check');
425 $o_until_check->setValue(1);
426 $o_until_check->setChecked($this->coupon_obj->getTillDateEnabled() ? 1 : 0);
429 $o_date_until->setPostVar(
'til');
431 $till_date = explode(
'-', $this->coupon_obj->getTillDate());
432 $date_t[
'til'][
'date'][
'd']= $till_date[2] !=
'00' ? $till_date[2] :
'';
433 $date_t[
'til'][
'date'][
'm'] = $till_date[1] !=
'00' ? $till_date[1] :
'';
434 $date_t[
'til'][
'date'][
'y'] = $till_date[0] !=
'0000' ? $till_date[0] :
'';
436 $_POST[
'til'] = $date_t[
'til'];
437 if($this->coupon_obj->getTillDateEnabled() ==
'1')
439 $o_date_until->checkInput();
442 $o_until_check->addSubItem($o_date_until);
443 $oForm->addItem($o_until_check);
445 $o_usage =
new ilNumberInputGUI($this->lng->txt(
'paya_coupons_availability'),
'usage');
447 $o_usage->setValue($this->coupon_obj->getUses());
448 $oForm->addItem($o_usage);
450 $oForm->addCommandButton(
'saveCouponForm', $this->lng->txt(
'save'));
451 $oForm->addCommandButton(
'showCoupons', $this->lng->txt(
'cancel'));
453 $this->tpl->setVariable(
'FORM',$oForm->getHTML());
465 $this->coupon_obj->deleteAllCodesByCouponId(
$_GET[
'coupon_id']);
476 if (!is_array(
$_POST[
'codes']))
492 if (is_array(
$_SESSION[
'paya_delete_codes']))
494 foreach(
$_SESSION[
'paya_delete_codes'] as $id)
496 $this->coupon_obj->deleteCode($id);
500 ilUtil::sendInfo($this->lng->txt(
'paya_coupons_code_deleted_successfully'));
518 $this->coupon_obj->setId(
$_GET[
'coupon_id']);
520 if (!count($codes = $this->coupon_obj->getCodesByCouponId(
$_GET[
'coupon_id'])))
530 $this->ctrl->setParameter($this,
'coupon_id',
$_GET[
'coupon_id']);
533 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.main_view.html',
'Services/Payment');
537 switch($a_show_delete)
539 case 'all': $del_cmd =
'performDeleteAllCodes';
540 $del_info = $this->lng->txt(
'paya_coupons_sure_delete_all_codes');
542 case 'selected': $del_cmd =
'performDeleteCodes';
543 $del_info = $this->lng->txt(
'paya_coupons_sure_delete_selected_codes');
549 $oConfirmationGUI->setFormAction($this->ctrl->getFormAction($this, $del_cmd));
550 $oConfirmationGUI->setHeaderText($del_info);
551 $oConfirmationGUI->setCancel($this->lng->txt(
"cancel"),
"cancelDelete");
552 $oConfirmationGUI->setConfirm($this->lng->txt(
"confirm"), $del_cmd);
554 foreach ($codes as $code)
556 if(in_array($code[
'pcc_pk'],
$_SESSION[
'paya_delete_codes']))
558 $oConfirmationGUI->addItem(
'',$code[
'pcc_code'], $code[
'pcc_code']);
562 $this->tpl->setVariable(
'CONFIRMATION', $oConfirmationGUI->getHTML());
569 foreach ($codes as $code)
572 "codes[]", $code[
'pcc_pk']);
573 $f_result[$counter][
'coupon_code'] = $code[
'pcc_code'];
574 $f_result[$counter][
'usage_of_codes'] = $code[
'pcc_used'].
" ".strtolower($this->lng->txt(
'of')).
" ".$this->coupon_obj->getUses();
580 $tbl->setTitle($this->lng->txt(
"paya_coupons_coupons"));
581 $tbl->setId(
'tbl_show_codes');
582 $tbl->setRowTemplate(
"tpl.shop_coupons_row.html",
"Services/Payment");
584 $tbl->addColumn(
'',
'coupon_id',
'1%');
585 $tbl->addColumn($this->lng->txt(
'paya_coupons_code'),
'coupon_code',
'30%');
586 $tbl->addColumn($this->lng->txt(
'paya_coupons_usage_of_codes'),
'usage_of_codes',
'60%');
588 $tbl->setSelectAllCheckbox(
'codes[]');
590 $tbl->addCommandButton(
'generateCodes',$this->lng->txt(
'paya_coupons_generate_codes'));
591 $tbl->addCommandButton(
'exportCodes',$this->lng->txt(
'export'));
593 $tbl->addMultiCommand(
"deleteCodes", $this->lng->txt(
"delete"));
595 $tbl->setData($f_result);
596 $this->tpl->setVariable(
'TABLE', $tbl->getHTML());
603 $codes = $this->coupon_obj->getCodesByCouponId(
$_GET[
"coupon_id"]);
605 if (is_array($codes))
607 include_once(
'./Services/Utilities/classes/class.ilCSVWriter.php');
610 $csv->setDelimiter(
"");
612 foreach($codes as
$data)
614 if ($data[
"pcc_code"])
616 $csv->addColumn($data[
"pcc_code"]);
631 if (isset(
$_POST[
"generate_length"]))
$_SESSION[
"pay_coupons"][
"code_length"] =
$_POST[
"generate_length"];
632 else $_POST[
"generate_length"] =
$_SESSION[
"pay_coupons"][
"code_length"];
637 if (
$_POST[
"generate_type"] ==
"self")
639 if (
$_GET[
"coupon_id"] && is_array(
$_POST[
"codes"]))
643 for ($i = 0; $i < count(
$_POST[
"codes"]); $i++)
647 if (
$_POST[
"codes"][$i] !=
"")
672 else if ((!is_numeric(
$_POST[
"generate_number"]) ||
$_POST[
"generate_number"] <= 0)
673 || (!is_numeric(
$_POST[
"generate_length"]) ||
$_POST[
"generate_length"] <= 0))
684 else if (
$_POST[
"generate_type"] ==
"auto")
686 if (
$_GET[
"coupon_id"] && is_numeric(
$_POST[
"generate_number"]) &&
$_POST[
"generate_number"] > 0)
688 for ($i = 0; $i <
$_POST[
"generate_number"]; $i++)
694 $this->coupon_obj->addCode($code,
$_GET[
"coupon_id"]);
713 if ($a_code ==
"") $a_code = md5(uniqid(rand()));
715 if (is_numeric($a_length) && strlen($a_code) > $a_length)
717 $a_code = substr($a_code, 0, $a_length);
725 $this->coupon_obj->setId(
$_GET[
'coupon_id']);
727 $this->ctrl->setParameter($this,
'coupon_id',
$_GET[
'coupon_id']);
732 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.main_view.html',
'Services/Payment');
734 $oForm_1->setId(
'save_frm');
735 $oForm_1->setFormAction($this->ctrl->getFormAction($this),
'saveCodeForm');
736 $oForm_1->setTitle($this->lng->txt(
"paya_coupons_coupon").
" ".$this->coupon_obj->getTitle().
": ".$this->lng->txt(
'paya_coupons_code_generation'));
738 if ($view ==
"choice")
740 $oTypeRadio =
new ilRadioGroupInputGUI($this->lng->txt(
'paya_coupons_generate_codes'),
'generate_type');
742 $radio_option =
new ilRadioOption($this->lng->txt(
'paya_coupons_type_auto'),
'auto');
743 $oTypeRadio->addOption($radio_option);
744 $radio_option =
new ilRadioOption($this->lng->txt(
'paya_coupons_type_self'),
'self');
745 $oTypeRadio->addOption($radio_option);
748 $oTypeRadio->setPostVar(
'generate_type');
749 $oForm_1->addItem($oTypeRadio);
751 $oNumCodes =
new ilNumberInputGUI($this->lng->txt(
"paya_coupons_number_of_codes"),
'generate_number');
753 $oNumCodes->setValue($_POST[
'generate_number']);
754 $oNumCodes->setRequired(
true);
755 $oForm_1->addItem($oNumCodes);
757 $oLength =
new ilNumberInputGUI($this->lng->txt(
"paya_coupons_code_length"),
'generate_length');
759 $oLength->setValue($_POST[
'generate_length']);
760 $oLength->setRequired(
true);
761 $oLength->setInfo($this->lng->txt(
'paya_coupons_type_self'));
762 $oForm_1->addItem($oLength);
764 $oForm_1->addCommandButton(
'saveCodeForm',$this->lng->txt(
'save'));
766 $this->tpl->setVariable(
'FORM', $oForm_1->getHTML());
768 $oForm_2 =
new ilPropertyformGUI();
769 $oForm_2->setId(
'import_frm');
770 $oForm_2->setFormAction($this->ctrl->getFormAction($this),
'showCodeImport');
771 $oForm_2->addCommandButton(
'showCodeImport',$this->lng->txt(
'import'));
772 $this->tpl->setVariable(
'FORM_2', $oForm_2->getHTML());
775 else if ($view ==
"input")
777 if (is_numeric(
$_POST[
'generate_number']) &&
$_POST[
'generate_number'] > 0)
779 for ($i = 0; $i <
$_POST[
'generate_number']; $i++)
783 $oForm_1->addItem($oLoopCode);
785 $oForm_1->addCommandButton(
'saveCodeForm',$this->lng->txt(
'save'));
788 $this->tpl->setVariable(
'FORM',$oForm_1->getHTML());
798 if (is_array(
$_POST[
'object_id']))
800 $this->coupon_obj->setId(
$_GET[
"coupon_id"]);
801 foreach(
$_POST[
'object_id'] as $id)
805 $this->coupon_obj->assignObjectToCoupon($id);
817 if (is_array(
$_POST[
'object_id']))
819 $this->coupon_obj->setId(
$_GET[
"coupon_id"]);
820 foreach(
$_POST[
'object_id'] as $id)
824 $this->coupon_obj->unassignObjectFromCoupon($id);
836 $this->coupon_obj->setId(
$_GET[
'coupon_id']);
840 $this->ctrl->setParameter($this,
'coupon_id',
$_GET[
'coupon_id']);
843 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.main_view.html',
'Services/Payment');
845 $objects = $this->pobject->_getObjectsData($this->user_obj->getId());
849 $counter_assigned = 0;
850 $counter_unassigned = 0;
851 $f_result_assigned = array();
852 $f_result_unassigned = array();
853 foreach($objects as
$data)
855 if ($this->coupon_obj->isObjectAssignedToCoupon($data[
'ref_id']))
857 $p_counter =& $counter_assigned;
858 $p_result =& $f_result_assigned;
862 $p_counter =& $counter_unassigned;
863 $p_result =& $f_result_unassigned;
870 $p_result[$p_counter][
'title'] = $tmp_obj->getTitle();
872 switch($data[
'status'])
874 case $this->pobject->STATUS_BUYABLE:
875 $p_result[$p_counter][
'status'] = $this->lng->txt(
'paya_buyable');
878 case $this->pobject->STATUS_NOT_BUYABLE:
879 $p_result[$p_counter][
'status'] = $this->lng->txt(
'paya_not_buyable');
882 case $this->pobject->STATUS_EXPIRES:
883 $p_result[$p_counter][
'status'] = $this->lng->txt(
'paya_expires');
886 include_once
'./Services/Payment/classes/class.ilPayMethods.php';
887 $p_result[$p_counter][
'pay_method'] = ilPaymethods::getStringByPaymethod($data[
'pay_method']);
891 $p_result[$p_counter][
'object_id'] =
'';
892 $p_result[$p_counter][
'title'] = $this->lng->txt(
'object_not_found');
893 $p_result[$p_counter][
'status'] =
'';
894 $p_result[$p_counter][
'pay_method'] =
'';
901 $this->ctrl->setParameter($this,
"cmd",
"showObjects");
903 if (count($f_result_assigned) > 0)
906 $tbl->setTitle($this->lng->txt(
"paya_coupons_coupon").
" ".$this->coupon_obj->getTitle().
": ".$this->lng->txt(
"paya_coupons_assigned_objects"));
907 $tbl->setId(
'tbl_show_assigned');
908 $tbl->setPrefix(
'assigned');
909 $tbl->setRowTemplate(
"tpl.shop_objects_row.html",
"Services/Payment");
911 $tbl->addColumn(
'',
'object_id',
'1%');
912 $tbl->addColumn($this->lng->txt(
'title'),
'title',
'10%');
913 $tbl->addColumn($this->lng->txt(
'status'),
'status',
'30%');
914 $tbl->addColumn($this->lng->txt(
'paya_pay_method'),
'paya_pay_method',
'60%');
916 $tbl->setSelectAllCheckbox(
'object_id');
918 $tbl->addMultiCommand(
'unassignObjects',$this->lng->txt(
'remove'));
921 $tbl->setData($f_result_assigned);
923 $this->tpl->setVariable(
'TABLE', $tbl->getHTML());
926 if (count($f_result_unassigned) > 0)
929 $tbl_2->setTitle($this->lng->txt(
"paya_coupons_coupon").
" ".$this->coupon_obj->getTitle().
": ".$this->lng->txt(
"paya_coupons_unassigned_objects"));
930 $tbl_2->setId(
'tbl_show_unassigned');
931 $tbl_2->setPrefix(
'unassigned');
932 $tbl_2->setRowTemplate(
"tpl.shop_objects_row.html",
"Services/Payment");
934 $tbl_2->addColumn(
'',
'object_id',
'1%');
935 $tbl_2->addColumn($this->lng->txt(
'title'),
'title',
'10%');
936 $tbl_2->addColumn($this->lng->txt(
'status'),
'status',
'30%');
937 $tbl_2->addColumn($this->lng->txt(
'paya_pay_method'),
'pay_method',
'60%');
939 $tbl_2->setSelectAllCheckbox(
'object_id');
941 $tbl_2->addMultiCommand(
'assignObjects',$this->lng->txt(
'add'));
944 $tbl_2->setData($f_result_unassigned);
946 $this->tpl->setVariable(
'TABLE_2', $tbl_2->getHTML());
954 include_once(
'./Services/Utilities/classes/class.ilCSVReader.php');
956 if ($_FILES[
"codesfile"][
"tmp_name"] !=
"")
959 $csv->setDelimiter(
"");
961 if ($csv->open($_FILES[
"codesfile"][
"tmp_name"]))
963 $data = $csv->getDataArrayFromCSVFile();
965 for ($i = 0; $i < count(
$data); $i++)
967 for ($j = 0; $j < count(
$data[$i]); $j++)
979 ilUtil::sendInfo($this->lng->txt(
"paya_coupons_import_error_opening_file"));
996 $this->ctrl->setParameter($this,
'coupon_id',
$_GET[
'coupon_id']);
998 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.main_view.html',
'Services/Payment');
1002 $oForm->setId(
'coup_form');
1003 $oForm->setFormAction($this->ctrl->getFormAction($this),
'importCodes');
1004 $oForm->setTitle( $this->lng->txt(
"paya_coupons_coupon").
" ".$this->coupon_obj->getTitle().
": ".$this->lng->txt(
'paya_coupons_codes_import'));
1006 $oFile =
new ilFileInputGUI($this->lng->txt(
'file'),
'codesfile');
1008 $oFile->setRequired(
true);
1009 $oFile->setInfo($this->lng->txt(
'import_use_only_textfile'));
1010 $oForm->addItem($oFile);
1012 $oForm->addCommandButton(
'importCodes',$this->lng->txt(
'upload'));
1014 $this->tpl->setVariable(
'FORM', $oForm->getHTML());
1023 $ilToolbar->addButton($this->lng->txt(
'paya_coupons_edit'), $this->ctrl->getLinkTarget($this,
'addCoupon'));
1024 $ilToolbar->addButton($this->lng->txt(
'paya_coupons_edit_codes'), $this->ctrl->getLinkTarget($this,
'showCodes'));
1025 $ilToolbar->addButton($this->lng->txt(
'paya_coupons_edit_objects'), $this->ctrl->getLinkTarget($this,
'showObjects'));
1032 include_once
'./Services/Payment/classes/class.ilPaymentObject.php';
1041 include_once
'./Services/Payment/classes/class.ilPaymentCoupons.php';
1049 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.main_view.html',
'Services/Payment');
1051 if (!isset(
$_GET[
'coupon_id']))
1056 # $this->ctrl->setParameter($this, 'coupon_id', $this->coupon_obj->getId());
1063 $oConfirmationGUI->setFormAction($this->ctrl->getFormAction($this,
'performDeleteCoupon'));
1064 $oConfirmationGUI->setHeaderText(
'');
1065 $oConfirmationGUI->setCancel($this->lng->txt(
"cancel"),
"showCoupons");
1066 $oConfirmationGUI->setConfirm($this->lng->txt(
"confirm"),
'performDeleteCoupon');
1068 $oConfirmationGUI->addHiddenItem(
'coupon_id',
$_GET[
'coupon_id']);
1069 $this->tpl->setVariable(
'CONFIRMATION', $oConfirmationGUI->getHTML());
1076 if (!isset(
$_POST[
'coupon_id']))
1080 $this->coupon_obj->deleteCouponByCouponId((
int)
$_POST[
'coupon_id']);