/** * Add the membership types. * * @param array $params * Reference array contains the values submitted by the form. * @param array $ids * Array contains the id - this param is deprecated. * * * @return object */ public static function add(&$params, $ids = array()) { $id = CRM_Utils_Array::value('id', $params, CRM_Utils_Array::value('membershipStatus', $ids)); if (!$id) { CRM_Core_DAO::setCreateDefaults($params, self::getDefaults()); //copy name to label when not passed. if (empty($params['label']) && !empty($params['name'])) { $params['label'] = $params['name']; } if (empty($params['name']) && !empty($params['label'])) { $params['name'] = $params['label']; } } // set all other defaults to false. if (!empty($params['is_default'])) { $query = "UPDATE civicrm_membership_status SET is_default = 0"; CRM_Core_DAO::executeQuery($query, CRM_Core_DAO::$_nullArray); } // action is taken depending upon the mode $membershipStatus = new CRM_Member_DAO_MembershipStatus(); $membershipStatus->copyValues($params); $membershipStatus->id = $id; $membershipStatus->save(); return $membershipStatus; }
/** * function to add the membership types * * @param array $params reference array contains the values submitted by the form * @param array $ids reference array contains the id * * @access public * @static * * @return object */ static function add(&$params, &$ids) { $params['is_active'] = CRM_Utils_Array::value('is_active', $params, FALSE); $params['is_current_member'] = CRM_Utils_Array::value('is_current_member', $params, FALSE); $params['is_admin'] = CRM_Utils_Array::value('is_admin', $params, FALSE); $params['is_default'] = CRM_Utils_Array::value('is_default', $params, FALSE); // set all other defaults to false. if ($params['is_default']) { $query = "UPDATE civicrm_membership_status SET is_default = 0"; CRM_Core_DAO::executeQuery($query, CRM_Core_DAO::$_nullArray); } //copy name to label when not passed. if (empty($params['label']) && !empty($params['name'])) { $params['label'] = $params['name']; } //for add mode, copy label to name. $statusId = CRM_Utils_Array::value('membershipStatus', $ids); if (!$statusId && !empty($params['label']) && empty($params['name'])) { $params['name'] = $params['label']; } // action is taken depending upon the mode $membershipStatus = new CRM_Member_DAO_MembershipStatus(); $membershipStatus->copyValues($params); $membershipStatus->id = $statusId; $membershipStatus->save(); return $membershipStatus; }