/** * edit custom Option. * * editing would involved modifying existing fields + adding data to new fields. * * @param string $action the action to be invoked * * @return void * @access public */ function edit($action) { $oid = CRM_Utils_Request::retrieve('oid', 'Positive', $this, false, 0); $params = array(); if ($oid) { $params['oid'] = $oid; require_once 'CRM/Price/BAO/Set.php'; $sid = CRM_Price_BAO_Set::getSetId($params); require_once 'CRM/Price/BAO/Set.php'; $usedBy =& CRM_Price_BAO_Set::getUsedBy($sid); } // set the userContext stack $session =& CRM_Core_Session::singleton(); $session->pushUserContext(CRM_Utils_System::url('civicrm/admin/price/field/option', "reset=1&action=browse&fid={$this->_fid}&sid={$this->_sid}")); $controller =& new CRM_Core_Controller_Simple('CRM_Price_Form_Option', ts('Price Field Option'), $action); $controller->set('fid', $this->_fid); $controller->setEmbedded(true); $controller->process(); $controller->run(); $this->browse(); if ($action & CRM_Core_Action::DELETE) { // add breadcrumb require_once 'CRM/Core/BAO/OptionValue.php'; $url = CRM_Utils_System::url('civicrm/admin/price/field/option', 'reset=1'); CRM_Utils_System::appendBreadCrumb(ts('Price Option'), $url); $this->assign('usedPriceSetTitle', CRM_Core_BAO_OptionValue::getTitle($oid)); $this->assign('usedBy', $usedBy); } }