true/false */ public function isQuickCreateSupported(){ //SalesOrder module is not enabled for quick create return false; } /** * Function to check whether the module is summary view supported * @return - true/false */ public function isSummaryViewSupported() { return false; } static function getAllCurrencies() { return getAllCurrencies(); } static function getAllProductTaxes() { return getAllTaxes('available'); } static function getAllShippingTaxes() { return getAllTaxes('available', 'sh'); } /** * Function to get relation query for particular module with function name * @param $recordId * @param $functionName * @param Vtiger_Module_Model $relatedModule * @return */ public function getRelationQuery($recordId, $functionName, $relatedModule) { if ($functionName === 'get_activities') { $userNameSql = getSqlForNameInDisplayFormat(array('first_name' => 'vtiger_users.first_name', 'last_name' => 'vtiger_users.last_name'), 'Users'); $query = "SELECT CASE WHEN (vtiger_users.user_name not like '') THEN $userNameSql ELSE vtiger_groups.groupname END AS user_name, vtiger_crmentity.*, vtiger_activity.activitytype, vtiger_activity.subject, vtiger_activity.date_start, vtiger_activity.time_start, vtiger_activity.recurringtype, vtiger_activity.due_date, vtiger_activity.time_end, vtiger_activity.visibility, vtiger_seactivityrel.crmid AS parent_id, CASE WHEN (vtiger_activity.activitytype = 'Task') THEN (vtiger_activity.status) ELSE (vtiger_activity.eventstatus) END AS status FROM vtiger_activity INNER JOIN vtiger_crmentity ON vtiger_crmentity.crmid = vtiger_activity.activityid LEFT JOIN vtiger_seactivityrel ON vtiger_seactivityrel.activityid = vtiger_activity.activityid LEFT JOIN vtiger_cntactivityrel ON vtiger_cntactivityrel.activityid = vtiger_activity.activityid LEFT JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smownerid LEFT JOIN vtiger_groups ON vtiger_groups.groupid = vtiger_crmentity.smownerid WHERE vtiger_crmentity.deleted = 0 AND vtiger_activity.activitytype = 'Task' AND vtiger_seactivityrel.crmid = ".$recordId; $relatedModuleName = $relatedModule->getName(); $query .= $this->getSpecificRelationQuery($relatedModuleName); $nonAdminQuery = $this->getNonAdminAccessControlQueryForRelation($relatedModuleName); if ($nonAdminQuery) { $query = appendFromClauseToQuery($query, $nonAdminQuery); } } else { $query = parent::getRelationQuery($recordId, $functionName, $relatedModule); } return $query; } /** * Function returns export query * @param $where * @return export query */ public function getExportQuery($focus, $query) { $baseTableName = $focus->table_name; $splitQuery = spliti(' FROM ', $query); $columnFields = explode(',', $splitQuery[0]); foreach ($columnFields as $key => &$value) { if($value == ' vtiger_inventoryproductrel.discount_amount'){ $value = ' vtiger_inventoryproductrel.discount_amount AS item_discount_amount'; } else if($value == ' vtiger_inventoryproductrel.discount_percent'){ $value = ' vtiger_inventoryproductrel.discount_percent AS item_discount_percent'; } else if($value == " $baseTableName.currency_id"){ $value = ' vtiger_currency_info.currency_name AS currency_id'; } } $joinSplit = spliti(' WHERE ',$splitQuery[1]); $joinSplit[0] .= " LEFT JOIN vtiger_currency_info ON vtiger_currency_info.id = $baseTableName.currency_id"; $splitQuery[1] = $joinSplit[0] . ' WHERE ' .$joinSplit[1]; $query = implode(',', $columnFields).' FROM ' . $splitQuery[1]; return $query; } }