public function onModelListGetModelFields() { $columnNames = ModelModel::getModelFields($this->getPluginCode(), Input::get('model_class')); $result = []; foreach ($columnNames as $columnName) { $result[] = ['title' => $columnName, 'value' => $columnName]; } return ['responseData' => ['options' => $result]]; }
public function onModelFormGetModelFields() { $columnNames = ModelModel::getModelFields($this->getPluginCode(), Input::get('model_class')); $asPlainList = Input::get('as_plain_list'); $result = []; foreach ($columnNames as $columnName) { if (!$asPlainList) { $result[] = ['title' => $columnName, 'value' => $columnName]; } else { $result[$columnName] = $columnName; } } return ['responseData' => ['options' => $result]]; }
public function listModelColumnNames() { $modelClass = $this->getModelClassDesignTime(); $key = md5('builder-global-model-list-' . $modelClass); $cached = Cache::get($key, false); if ($cached !== false && ($cached = @unserialize($cached)) !== false) { return $cached; } $pluginCodeObj = PluginCode::createFromNamespace($modelClass); $modelClassParts = explode('\\', $modelClass); // The full class name is already validated in PluginCode::createFromNamespace() $modelClass = array_pop($modelClassParts); $columnNames = ModelModel::getModelFields($pluginCodeObj, $modelClass); $result = []; foreach ($columnNames as $columnName) { $result[$columnName] = $columnName; } Cache::put($key, serialize($result), 1); return $result; }