Esempio n. 1
0
 function Create()
 {
     global $manage_datafiled_denied_fieldnames;
     $dataset = $this->dataset;
     $type = $this->datatype;
     $title = $this->title;
     $field = $this->field;
     if (trim($title) == '' || trim($field) == '' || trim($type) == '') {
         return false;
     }
     if (db_count('dataset_assoc', '`dataset`="' . $this->id . '" and `title`="' . $title . '"') > 0) {
         add_info('Поле с таким именем уже существует в этом наборе данных.');
         return false;
     }
     if (db_count('dataset_assoc', '`dataset`="' . $dataset . '" and `field`="' . $field . '"') > 0) {
         add_info('Поле с таким именем поля в базе данных уже ' . 'существует в этом наборе данных.');
         return false;
     }
     if (!isalphanum($field)) {
         add_info('Название поля может содержать лишь ' . 'символы латинского алфавита и цифры.');
         return false;
     }
     // Check da valide of the fieldname
     $valid = true;
     for ($i = 0; $i < count($manage_datafiled_denied_fieldnames); $i++) {
         if ($manage_datafiled_denied_fieldnames[$i] == $field) {
             $valid = false;
             break;
         }
     }
     if (!$valid) {
         add_info('Извините, но данное название поля является ' . 'системным и Вы не можете его использрвать.');
         return false;
     }
     $title = htmlspecialchars($title);
     $mord = db_max('dataset_assoc', 'order', '`dataset`=' . $dataset);
     $ord = $mord + 1;
     $s = array('important' => false, 'invisible' => false);
     $s = addslashes(serialize($s));
     db_insert('dataset_assoc', array('dataset' => '"' . $dataset . '"', 'datatype' => "\"{$type}\"", 'title' => "\"{$title}\"", 'field' => "\"{$field}\"", 'settings' => "\"{$s}\"", 'order' => $ord));
     manage_datatype_refcount_inc($type);
     return true;
 }
Esempio n. 2
0
 function Ref()
 {
     return manage_datatype_refcount_inc($this->id);
 }