/** * Generator Plugin Block. * * @param $module * @param $class_name * @param $label * @param $plugin_id * @param $services */ public function generate($module, $class_name, $label, $plugin_id, $services, $inputs) { // Consider the type when determining a default value. Figure out what // the code looks like for the default value tht we need to generate. foreach ($inputs as &$input) { $default_code = '$this->t(\'\')'; if ($input['default_value'] == '') { switch ($input['type']) { case 'checkbox': case 'number': case 'weight': case 'radio': $default_code = 0; break; case 'radios': case 'checkboxes': $default_code = 'array()'; break; } } elseif (substr($input['default_value'], 0, 1) == '$') { // If they want to put in code, let them, they're programmers. $default_code = $input['default_value']; } elseif (is_numeric($input['default_value'])) { $default_code = $input['default_value']; } elseif (preg_match('/^(true|false)$/i', $input['default_value'])) { // Coding Standards $default_code = strtoupper($input['default_value']); } else { $default_code = '$this->t(\'' . $input['default_value'] . '\')'; } $input['default_code'] = $default_code; } $parameters = ['module' => $module, 'class_name' => $class_name, 'label' => $label, 'plugin_id' => $plugin_id, 'services' => $services, 'inputs' => $inputs]; $this->renderFile('module/src/Plugin/Block/block.php.twig', $this->extensionManager->getPluginPath($module, 'Block') . '/' . $class_name . '.php', $parameters); }
/** * Generator Plugin Field Formatter. * * @param string $module Module name * @param string $class_name Plugin Class name * @param string $label Plugin label * @param string $plugin_id Plugin id * @param string $field_type Field type this formatter supports */ public function generate($module, $class_machine_name, $class_name, $title, $description) { $parameters = ['module' => $module, 'class_machine_name' => $class_machine_name, 'class_name' => $class_name, 'title' => $title, 'description' => $description]; $this->renderFile('module/module.views.inc.twig', $this->extensionManager->getModule($module)->getPath() . '/' . $module . '.views.inc', $parameters); $this->renderFile('module/src/Plugin/Views/field/field.php.twig', $this->extensionManager->getPluginPath($module, 'views/field') . '/' . $class_name . '.php', $parameters); }
/** * Generator Plugin Block. * * @param $module * @param $class_name * @param $label * @param $plugin_id * @param $services */ public function generate($module, $class_name, $label, $plugin_id, $services, $inputs) { $parameters = ['module' => $module, 'class_name' => $class_name, 'label' => $label, 'plugin_id' => $plugin_id, 'services' => $services, 'inputs' => $inputs]; $this->renderFile('module/src/Plugin/Block/block.php.twig', $this->extensionManager->getPluginPath($module, 'Block') . '/' . $class_name . '.php', $parameters); }
/** * Generator Plugin CKEditor Button. * * @param string $module Module name * @param string $class_name Plugin Class name * @param string $label Plugin label * @param string $plugin_id Plugin id * @param string $button_name Button name */ public function generate($module, $class_name, $label, $plugin_id, $button_name, $button_icon_path) { $parameters = ['module' => $module, 'class_name' => $class_name, 'label' => $label, 'plugin_id' => $plugin_id, 'button_name' => $button_name, 'button_icon_path' => $button_icon_path]; $this->renderFile('module/src/Plugin/CKEditorPlugin/ckeditorbutton.php.twig', $this->extensionManager->getPluginPath($module, 'CKEditorPlugin') . '/' . $class_name . '.php', $parameters); }
/** * Generator Plugin Field Formatter. * * @param string $module Module name * @param string $class_name Plugin condition Class name * @param string $label Plugin condition label * @param string $plugin_id Plugin condition id * @param string $context_definition_id Plugin condition context definition id * @param string $context_definition_label Plugin condition context definition label * @param bool $context_definition_required Plugin condition context definition required */ public function generate($module, $class_name, $label, $plugin_id, $context_definition_id, $context_definition_label, $context_definition_required) { $parameters = ['module' => $module, 'class_name' => $class_name, 'label' => $label, 'plugin_id' => $plugin_id, 'context_definition_id' => $context_definition_id, 'context_definition_label' => $context_definition_label, 'context_definition_required' => $context_definition_required, 'context_id' => str_replace('entity:', '', $context_definition_id)]; $this->renderFile('module/src/Plugin/Condition/condition.php.twig', $this->extensionManager->getPluginPath($module, 'Condition') . '/' . $class_name . '.php', $parameters); }