当前位置: 首页>>代码示例>>PHP>>正文


PHP ca_sets::replaceAttribute方法代码示例

本文整理汇总了PHP中ca_sets::replaceAttribute方法的典型用法代码示例。如果您正苦于以下问题:PHP ca_sets::replaceAttribute方法的具体用法?PHP ca_sets::replaceAttribute怎么用?PHP ca_sets::replaceAttribute使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ca_sets的用法示例。


在下文中一共展示了ca_sets::replaceAttribute方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: saveSetInfo

 function saveSetInfo()
 {
     if (!$this->request->isLoggedIn()) {
         $this->response->setRedirect(caNavUrl($this->request, '', 'LoginReg', 'loginForm'));
         return;
     }
     global $g_ui_locale_id;
     // current locale_id for user
     $va_errors = array();
     $o_purifier = new HTMLPurifier();
     # --- set_id is passed through form, otherwise we're saving a new set
     if ($this->request->getParameter('set_id', pInteger)) {
         $t_set = $this->_getSet(__CA_EDIT_READ_ACCESS__);
     } else {
         $t_set = new ca_sets();
     }
     # --- check for errors
     # --- set name - required
     $ps_name = $o_purifier->purify($this->request->getParameter('name', pString));
     if (!$ps_name) {
         $va_errors["name"] = _t("Please enter the name of your lightbox");
     } else {
         $this->view->setVar("name", $ps_name);
     }
     # --- set description - optional
     $ps_description = $o_purifier->purify($this->request->getParameter('description', pString));
     $this->view->setVar("description", $ps_description);
     $t_list = new ca_lists();
     $vn_set_type_user = $t_list->getItemIDFromList('set_types', $this->request->config->get('user_set_type'));
     $t_object = new ca_objects();
     $vn_object_table_num = $t_object->tableNum();
     if (sizeof($va_errors) == 0) {
         $t_set->setMode(ACCESS_WRITE);
         $t_set->set('access', 1);
         #$t_set->set('access', $this->request->getParameter('access', pInteger));
         if ($t_set->get("set_id")) {
             # --- edit/add description
             $t_set->replaceAttribute(array('description' => $ps_description, 'locale_id' => $g_ui_locale_id), 'description');
             $t_set->update();
         } else {
             $t_set->set('table_num', $vn_object_table_num);
             $t_set->set('type_id', $vn_set_type_user);
             $t_set->set('user_id', $this->request->getUserID());
             $t_set->set('set_code', $this->request->getUserID() . '_' . time());
             # --- create new attribute
             $t_set->addAttribute(array('description' => $ps_description, 'locale_id' => $g_ui_locale_id), 'description');
             $t_set->insert();
         }
         if ($t_set->numErrors()) {
             $va_errors["general"] = join("; ", $t_set->getErrors());
             $this->view->setVar('errors', $va_errors);
             $this->setForm();
         } else {
             # --- save name
             if (sizeof($va_labels = caExtractValuesByUserLocale($t_set->getLabels(array($g_ui_locale_id), __CA_LABEL_TYPE_PREFERRED__)))) {
                 # --- edit label
                 foreach ($va_labels as $vn_set_id => $va_label) {
                     $t_set->editLabel($va_label[0]['label_id'], array('name' => $ps_name), $g_ui_locale_id);
                 }
             } else {
                 # --- add new label
                 $t_set->addLabel(array('name' => $ps_name), $g_ui_locale_id, null, true);
             }
             # --- select the current set
             $this->request->user->setVar('current_set_id', $t_set->get("set_id"));
             $this->view->setVar("message", _t('Saved lightbox.'));
             $this->render("Form/reload_html.php");
         }
     } else {
         $this->view->setVar('errors', $va_errors);
         $this->setForm();
     }
 }
开发者ID:ffarago,项目名称:pawtucket2,代码行数:73,代码来源:SetsController.php

示例2: saveSetInfo

 /**
  *
  */
 public function saveSetInfo()
 {
     if (!$this->request->isLoggedIn()) {
         $this->response->setRedirect(caNavUrl($this->request, '', 'LoginReg', 'form'));
         return;
     }
     global $g_ui_locale_id;
     // current locale_id for user
     $va_errors_edit_set = array();
     $o_purifier = new HTMLPurifier();
     $t_set = new ca_sets();
     $pn_set_id = $this->request->getParameter('set_id', pInteger);
     $ps_name = $o_purifier->purify($this->request->getParameter('name', pString));
     if (!$ps_name) {
         $va_errors_edit_set["name"] = _t("You must enter a name for your lightbox");
     }
     $vs_desc = $o_purifier->purify($this->request->getParameter('description', pString));
     if (sizeof($va_errors_edit_set) == 0) {
         if ($t_set->load($pn_set_id) && $t_set->haveAccessToSet($this->request->getUserID(), __CA_SET_EDIT_ACCESS__)) {
             $t_set->setMode(ACCESS_WRITE);
             $t_set->set('access', $this->request->getParameter('access', pInteger));
             // edit/add description
             $t_set->replaceAttribute(array('locale_id' => $g_ui_locale_id, 'set_description' => $vs_desc), 'set_description');
             $t_set->update();
             if (sizeof($va_labels = caExtractValuesByUserLocale($t_set->getLabels(array($g_ui_locale_id), __CA_LABEL_TYPE_PREFERRED__)))) {
                 // edit label
                 foreach ($va_labels as $vn_set_id => $va_label) {
                     $t_set->editLabel($va_label[0]['label_id'], array('name' => $ps_name), $g_ui_locale_id);
                 }
             } else {
                 // add new label
                 $t_set->addLabel(array('name' => $ps_name), $g_ui_locale_id, null, true);
             }
         } else {
             $this->view->setVar('message', _t("You can not edit this set.  You have read only access."));
         }
     }
     $this->view->setVar('errors_edit_set', $va_errors_edit_set);
     $this->index();
 }
开发者ID:guaykuru,项目名称:pawtucket,代码行数:43,代码来源:SetsController.php


注:本文中的ca_sets::replaceAttribute方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。