diff --git a/module/user/model.php b/module/user/model.php index a840d90217..6e4aa8526e 100644 --- a/module/user/model.php +++ b/module/user/model.php @@ -323,6 +323,16 @@ class userModel extends model $data[$i]->address = $users->address[$i]; $data[$i]->zipcode = $users->zipcode[$i]; + /* Check required fields. */ + foreach(explode(',', $this->config->user->create->requiredFields) as $field) + { + $field = trim($field); + if(empty($field)) continue; + if(!empty($data[$i]->$field)) continue; + + die(js::error(sprintf($this->lang->error->notempty, $this->lang->user->$field))); + } + /* Change for append field, such as feedback.*/ if(!empty($this->config->user->batchAppendFields)) { @@ -520,6 +530,16 @@ class userModel extends model $users[$id]['dept'] = $data->dept[$id] == 'ditto' ? (isset($prev['dept']) ? $prev['dept'] : 0) : $data->dept[$id]; $users[$id]['role'] = $data->role[$id] == 'ditto' ? (isset($prev['role']) ? $prev['role'] : 0) : $data->role[$id]; + /* Check required fields. */ + foreach(explode(',', $this->config->user->edit->requiredFields) as $field) + { + $field = trim($field); + if(empty($field)) continue; + if(!empty($users[$id][$field])) continue; + + die(js::error(sprintf($this->lang->error->notempty, $this->lang->user->$field))); + } + if(!empty($this->config->user->batchAppendFields)) { $appendFields = explode(',', $this->config->user->batchAppendFields); diff --git a/module/user/view/batchcreate.html.php b/module/user/view/batchcreate.html.php index 990e55b5cb..a680c42798 100644 --- a/module/user/view/batchcreate.html.php +++ b/module/user/view/batchcreate.html.php @@ -22,12 +22,22 @@ user->customBatchCreateFields},", ",{$field},") === false) continue; if($field) $visibleFields[$field] = ''; } + + foreach(explode(',', $config->user->create->requiredFields) as $field) + { + if($field) + { + $requiredFields[$field] = ''; + if(strpos(",{$config->user->custom->batchCreateFields},", ",{$field},") !== false) $visibleFields[$field] = ''; + } + } $minWidth = (count($visibleFields) > 5) ? 'w-150px' : ''; ?>