Beispiel #1
0
/** Function to get permitted fields of current user of a particular module to find duplicate records --Pavani*/
function getMergeFields($module, $str)
{
    global $adb, $current_user;
    $tabid = getTabid($module);
    if ($str == "available_fields") {
        $result = getFieldsResultForMerge($tabid);
    } else {
        //if($str == fileds_to_merge)
        $sql = "select * from vtiger_user2mergefields where tabid=? and userid=? and visible=1";
        $result = $adb->pquery($sql, array($tabid, $current_user->id));
    }
    $num_rows = $adb->num_rows($result);
    $user_profileid = fetchUserProfileId($current_user->id);
    $permitted_list = getProfile2FieldPermissionList($module, $user_profileid);
    $sql_def_org = "select fieldid from vtiger_def_org_field where tabid=? and visible=0";
    $result_def_org = $adb->pquery($sql_def_org, array($tabid));
    $num_rows_org = $adb->num_rows($result_def_org);
    $permitted_org_list = array();
    for ($i = 0; $i < $num_rows_org; $i++) {
        $permitted_org_list[$i] = $adb->query_result($result_def_org, $i, "fieldid");
    }
    require 'user_privileges/user_privileges_' . $current_user->id . '.php';
    for ($i = 0; $i < $num_rows; $i++) {
        $field_id = $adb->query_result($result, $i, "fieldid");
        foreach ($permitted_list as $field => $data) {
            if ($data[4] == $field_id and $data[1] == 0) {
                if ($is_admin == 'true' || in_array($field_id, $permitted_org_list)) {
                    $field = "<option value=\"" . $field_id . "\">" . getTranslatedString($data[0], $module) . "</option>";
                    $fields .= $field;
                    break;
                }
            }
        }
    }
    return $fields;
}
 function insertUser2mergefields($userid)
 {
     global $log, $adb;
     $log->debug("Entering insertUser2mergefields(" . $userid . ") method ...");
     $log->info("in insertUser2mergefields " . $userid);
     //$this->db->database->SetFetchMode(ADODB_FETCH_ASSOC);
     $tab_res = $adb->query("SELECT distinct tabid FROM vtiger_tab");
     $noOfTabs = $adb->num_rows($tab_res);
     for ($i = 0; $i < $noOfTabs; $i++) {
         $tab_id = $this->db->query_result($tab_res, $i, 'tabid');
         $fld_result = getFieldsResultForMerge($tab_id);
         if ($fld_result != null) {
             $num_rows = $this->db->num_rows($fld_result);
             for ($j = 0; $j < $num_rows; $j++) {
                 $field_id = $this->db->query_result($fld_result, $j, 'fieldid');
                 $data_type = explode("~", $this->db->query_result($fld_result, $j, 'typeofdata'));
                 if ($data_type[1] == 'M') {
                     $visible = 1;
                     $this->db->query("insert into vtiger_user2mergefields values ({$userid}, {$tab_id}, {$field_id}, {$visible})");
                 }
             }
         }
     }
     $log->debug("Exiting insertUser2mergefields method ...");
 }
function insertUser2mergefields($userid, $tabid)
{
    global $log, $adb;
    $log->debug("Entering insertUser2mergefields(" . $userid . ") method ...");
    $log->info("in insertUser2mergefields " . $userid);
    foreach ($tabid as $key => $tab_id) {
        $fld_result = getFieldsResultForMerge($tab_id);
        if ($fld_result != null) {
            $num_rows = $adb->num_rows($fld_result);
            for ($j = 0; $j < $num_rows; $j++) {
                $field_id = $adb->query_result($fld_result, $j, 'fieldid');
                $data_type = explode("~", $adb->query_result($fld_result, $j, 'typeofdata'));
                if ($data_type[1] == 'M') {
                    $visible = 1;
                } else {
                    $visible = 2;
                }
                ExecuteQuery("insert into vtiger_user2mergefields values ({$userid}, {$tab_id}, {$field_id}, {$visible})");
            }
        }
    }
    $log->debug("Exiting insertUser2mergefields method ...");
}