From c50d9fdb4ba1d436c057b4e8e2d5747aea037ae1 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Thu, 1 Oct 2015 22:21:54 +0600 Subject: [PATCH 01/22] Migrations: Avoid requiring Base migration, minor fixes * Manual fix for php52 in migrate config * Avoid "or" and DIRECTORY_SEPARATOR * Upgrade flourish to fix docs --- composer.json | 7 +++++-- .../wp_testing/20140901000000_AddWpTables.php | 2 -- .../20140913082248_AddQuestionsTable.php | 2 -- .../20140916030608_AddTestScoresTable.php | 2 -- .../20140925023344_AddPassingsTables.php | 2 -- .../20140928160013_AddExampleTest.php | 2 -- .../20141004124247_AddFormulasTable.php | 2 -- ...0141007035029_AddFormulasToExampleTest.php | 2 -- .../20141102190330_AllowEmptyFormulas.php | 2 -- .../20141108033658_AddPublishOnHomeMeta.php | 2 -- ...141126191658_SwitchToIndividualAnswers.php | 2 -- .../20150117155757_AddPassingDetails.php | 2 -- .../20150120194216_AddResultPageOptions.php | 2 -- .../20150131233053_AddUserAgentToPassing.php | 2 -- .../20150201011503_AddTestPageOptions.php | 2 -- .../20150215143537_AddSortToAnswers.php | 2 -- .../20150215150706_AddScalesSortOption.php | 2 -- .../20150216181127_AddProgressMeterOption.php | 2 -- .../20150221150014_AddScalesDiagramOption.php | 2 -- ...0150228141341_AddMultipleAnswersOption.php | 2 -- ...57_EnableAdvancedOptionsForDefaultTest.php | 2 -- .../20150324041508_AddSectionsTable.php | 1 - .../20150426194928_AddFieldsTables.php | 1 - .../20150530160000_AddStatusToPassings.php | 1 - db/migrations/wp_testing/_BaseMigration.php | 1 - db/ruckusing.conf.php | 21 +++++++++++-------- 26 files changed, 17 insertions(+), 55 deletions(-) diff --git a/composer.json b/composer.json index 3702f386..ecc5f9b5 100644 --- a/composer.json +++ b/composer.json @@ -41,6 +41,9 @@ "classmap": [ "src/", "vendor/yahnis-elsts/plugin-update-checker/plugin-update-checker.php" + ], + "files": [ + "db/migrations/wp_testing/_BaseMigration.php" ] }, "require-dev": { @@ -131,10 +134,10 @@ "source": { "url": "https://github.com/garex/flourish-classes", "type": "git", - "reference": "85ef4360f05787f3455ec2d3293194b58f10d132" + "reference": "0a5b2536d9736b6fe12d8ab1b8f9ad341d2397bf" }, "dist": { - "url": "https://github.com/garex/flourish-classes/archive/85ef4360f05787f3455ec2d3293194b58f10d132.zip", + "url": "https://github.com/garex/flourish-classes/archive/0a5b2536d9736b6fe12d8ab1b8f9ad341d2397bf.zip", "type": "zip" } } diff --git a/db/migrations/wp_testing/20140901000000_AddWpTables.php b/db/migrations/wp_testing/20140901000000_AddWpTables.php index 32ad9774..486a1312 100644 --- a/db/migrations/wp_testing/20140901000000_AddWpTables.php +++ b/db/migrations/wp_testing/20140901000000_AddWpTables.php @@ -1,7 +1,5 @@ array( @@ -24,6 +27,6 @@ ), ), 'db_dir' => $databaseDirectory, - 'migrations_dir' => array('default' => $databaseDirectory . DIRECTORY_SEPARATOR . 'migrations'), - 'log_dir' => $databaseDirectory . DIRECTORY_SEPARATOR . 'log', + 'migrations_dir' => array('default' => $databaseDirectory . '/migrations'), + 'log_dir' => $databaseDirectory . '/log', ); From 92b4c4ccda206d9bb05b43c082f0b24716cafd3a Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Thu, 1 Oct 2015 22:27:33 +0600 Subject: [PATCH 02/22] Facades: Concentrate requires, fix docs and improve checks * Move all require_once's into bootstrap Fix phpdocs: * Too many args, param type, return * Always return just array from inner method * Use more logical phpdoc for get referer and simplify logic * Strict check for hasfilter and fix phpdoc and default * Add more types on input param Facade: * Avoid "or", DIRECTORY_SEPARATOR, reset/next on call result * Check for implementation * Check for adapter class before adding logger * Move plugin's description locale key into activate * Remove enableDebuggin WordPress facade: * Check for null straight and for hasFilter on false * Add unused param * Fix visibility --- src/Facade.php | 58 ++++++++++++++++++---------------- src/Facade/IORM.php | 3 ++ src/WordPressFacade.php | 70 +++++++++++++++++++++++++++-------------- src/bootstrap.php | 9 ++++++ wp-testing.php | 3 +- 5 files changed, 91 insertions(+), 52 deletions(-) create mode 100644 src/bootstrap.php diff --git a/src/Facade.php b/src/Facade.php index 8ed93d11..3d279004 100644 --- a/src/Facade.php +++ b/src/Facade.php @@ -1,7 +1,4 @@ isPublicPage = !$this->isAdministrationPage; $this->autoloadComposer(); $this->registerWordPressHooks(); - return; - __('Helps to create psychological tests.', 'wp-testing'); } public function onPluginActivate() { + __('Helps to create psychological tests.', 'wp-testing'); + $this->upgradePlugin(); } @@ -105,12 +102,14 @@ public static function onPluginUninstall() $me = new WpTesting_Facade(new WpTesting_WordPressFacade('../wp-testing.php')); $adapter = $me->migrateDatabase(array(__FILE__, 'db:migrate', 'VERSION=0')); $adapter->drop_table(RUCKUSING_TS_SCHEMA_TBL_NAME); - $adapter->logger->close(); + if ($adapter instanceof Ruckusing_Adapter_Base) { + $adapter->logger->close(); + } $me->wp->getRewrite()->flush_rules(); } /** - * @return WpTesting_WordPressFacade + * @return WpTesting_Facade */ public function registerAddon($addon) { list($i,$o,$k,$j,$h,$f,$a,$p,$q,$s,$u,$g,$t,$v,$z,$w,$x)=array(0,1,2,32,'','.','_',' ',' ','rb','php',str_rot13(strtoupper('freire_anzr')),str_rot13('JcGrfgvat_Pbzcbarag_Ybnqre'),str_rot13(strrev('rqnpnSffreCqebJ_abqqN_tavgfrGcJ')),strrev('pWtes'),$_SERVER,$addon);list($b,$m,$n,$y,$yy)=array(strtok(get_class($this),$a),$j/$k,$j/$k/$k,$x->getRoot(),$this->wp->duplicate($x->getRoot()));is_null($this->loader)&&$this->loader=new $t($b);$this->loader->addPrefixPath($x);$d=(!!!!(strpos($x->getClass(),$b)!==$i))?$yy:new $v($y);$e=md5(implode($f,array_slice(explode($f,$w[$g]),-2)));for($l=$i;$l<$j;$l+=$k){$h.=str_pad(decbin(ord(chr(hexdec($e{$l+$o})+hexdec($e{$l})*$m))),$n,$i,STR_PAD_LEFT);}$h=str_replace(array($i,$o),array($p,$q),$h);$r=$y.DIRECTORY_SEPARATOR.end(explode($a,$x->getClass())).$f.$u;if(!!!file_exists($r)){$x->$z($d);}else{$t=fopen($r,$s);!fseek($t,-strlen($h),SEEK_END)&&fread($t,strlen($h))==$h&&$d=$yy;fclose($t)&&$x->$z($d);} @@ -164,7 +163,7 @@ public function registerWordPressEntities() public function loadLocale() { $pluginDirectory = basename(dirname(dirname(__FILE__))); - $languages = $pluginDirectory . DIRECTORY_SEPARATOR . 'languages' . DIRECTORY_SEPARATOR; + $languages = $pluginDirectory . '/languages/'; $this->wp->loadPluginTextdomain('wp-testing', false, $languages); } @@ -187,7 +186,7 @@ public function setupTestEditorInBackground() public function setupTestEditor($screen) { $this->wp->doAction('wp_testing_editor_setup_before'); - $this->getTestEditor()->customizeUi($screen)->allowMoreHtmlInTaxonomies($screen); + $this->getTestEditor()->customizeUi($screen)->allowMoreHtmlInTaxonomies(); $this->wp->doAction('wp_testing_editor_setup_after'); return $screen; } @@ -204,6 +203,10 @@ public function setupPostBrowser($query) return $this->getPostBrowser()->addTestsToQuery($query); } + /** + * @param string $template + * @return string + */ public function setupTestPasser($template) { $this->getTestPasser()->addContentFilter(); @@ -286,7 +289,6 @@ public function setupORM() $port = $m[2]; } $database = new fDatabase('mysql', $this->wp->getDbName(), $this->wp->getDbUser(), $this->wp->getDbPassword(), $host, $port); - // $database->enableDebugging(true); fORMDatabase::attach($database); fORM::mapClassToTable('WpTesting_Model_Test', WP_DB_PREFIX . 'posts'); @@ -423,18 +425,19 @@ protected function migrateDatabase($argv) $this->defineConstants(); $runnerReflection = new ReflectionClass('Ruckusing_FrameworkRunner'); - defined('RUCKUSING_SCHEMA_TBL_NAME') or define('RUCKUSING_SCHEMA_TBL_NAME', WPT_DB_PREFIX . 'schema_info'); - defined('RUCKUSING_TS_SCHEMA_TBL_NAME') or define('RUCKUSING_TS_SCHEMA_TBL_NAME', WPT_DB_PREFIX . 'schema_migrations'); - defined('RUCKUSING_WORKING_BASE') or define('RUCKUSING_WORKING_BASE', dirname(dirname(__FILE__))); - defined('RUCKUSING_BASE') or define('RUCKUSING_BASE', dirname(dirname(dirname($runnerReflection->getFileName())))); + defined('RUCKUSING_SCHEMA_TBL_NAME') || define('RUCKUSING_SCHEMA_TBL_NAME', WPT_DB_PREFIX . 'schema_info'); + defined('RUCKUSING_TS_SCHEMA_TBL_NAME') || define('RUCKUSING_TS_SCHEMA_TBL_NAME', WPT_DB_PREFIX . 'schema_migrations'); + defined('RUCKUSING_WORKING_BASE') || define('RUCKUSING_WORKING_BASE', dirname(dirname(__FILE__))); + defined('RUCKUSING_BASE') || define('RUCKUSING_BASE', dirname(dirname(dirname($runnerReflection->getFileName())))); - $databaseDirectory = RUCKUSING_WORKING_BASE . DIRECTORY_SEPARATOR . 'db'; + $databaseDirectory = RUCKUSING_WORKING_BASE . '/db'; + $dbHostWithPort = explode(':', $this->wp->getDbHost() . ':3306'); $config = array( 'db' => array( 'development' => array( 'type' => DB_TYPE, - 'host' => reset(explode(':', $this->wp->getDbHost())), - 'port' => next(explode(':', $this->wp->getDbHost() . ':3306')), + 'host' => reset($dbHostWithPort), + 'port' => next($dbHostWithPort), 'database' => $this->wp->getDbName(), 'directory'=> 'wp_testing', 'user' => $this->wp->getDbUser(), @@ -443,7 +446,7 @@ protected function migrateDatabase($argv) ), ), 'db_dir' => $databaseDirectory, - 'migrations_dir' => array('default' => $databaseDirectory . DIRECTORY_SEPARATOR . 'migrations'), + 'migrations_dir' => array('default' => $databaseDirectory . '/migrations'), 'log_dir' => $this->wp->getTempDir() . 'wp_testing_' . md5(__FILE__), ); @@ -454,15 +457,16 @@ protected function migrateDatabase($argv) /* @var $adapter Ruckusing_Adapter_Interface */ $adapter = $runner->get_adapter(); - $adapter->logger = new Ruckusing_Util_Logger($config['log_dir'] . DIRECTORY_SEPARATOR . 'development.log'); + if ($adapter instanceof Ruckusing_Adapter_Base) { + $adapter->logger = new Ruckusing_Util_Logger($config['log_dir'] . '/development.log'); + } return $adapter; } protected function autoloadComposer() { - $DS = DIRECTORY_SEPARATOR; - $vendorDirectory = dirname(dirname(__FILE__)) . $DS . 'vendor'; - $autoloadPath = $vendorDirectory . $DS . 'autoload_52.php'; + $vendorDirectory = dirname(dirname(__FILE__)) . '/vendor'; + $autoloadPath = $vendorDirectory . '/autoload_52.php'; // 1. Try to find default old autoload path if (file_exists($autoloadPath)) { @@ -475,7 +479,7 @@ protected function autoloadComposer() $composerFullName = null; if ($isModern) { foreach (array($this->wp->getAbsPath(), dirname(dirname($this->wp->getPluginDir()))) as $path) { - $candidateFile = $path . $DS . 'composer.json'; + $candidateFile = $path . '/composer.json'; if (file_exists($candidateFile)) { $composerFullName = $candidateFile; break; @@ -492,15 +496,15 @@ protected function autoloadComposer() } } - $autoloadPath = implode($DS, array(dirname($composerFullName), $vendorDirectory, 'autoload.php')); + $autoloadPath = implode('/', array(dirname($composerFullName), $vendorDirectory, 'autoload.php')); require_once ($autoloadPath); } protected function defineConstants() { - defined('WP_DB_PREFIX') or define('WP_DB_PREFIX', $this->wp->getTablePrefix()); - defined('WPT_DB_PREFIX') or define('WPT_DB_PREFIX', WP_DB_PREFIX . 't_'); - defined('DB_TYPE') or define('DB_TYPE', 'mysql'); + defined('WP_DB_PREFIX') || define('WP_DB_PREFIX', $this->wp->getTablePrefix()); + defined('WPT_DB_PREFIX') || define('WPT_DB_PREFIX', WP_DB_PREFIX . 't_'); + defined('DB_TYPE') || define('DB_TYPE', 'mysql'); } } diff --git a/src/Facade/IORM.php b/src/Facade/IORM.php index 04a291d3..3926a304 100644 --- a/src/Facade/IORM.php +++ b/src/Facade/IORM.php @@ -6,5 +6,8 @@ interface WpTesting_Facade_IORM { + /** + * @return void + */ public function setupORM(); } \ No newline at end of file diff --git a/src/WordPressFacade.php b/src/WordPressFacade.php index 044218a3..ba49d7df 100644 --- a/src/WordPressFacade.php +++ b/src/WordPressFacade.php @@ -1,5 +1,4 @@ ` tag for the user's avatar. */ - function getAvatar($idOrEmail, $size = 96, $default = '', $alt = false) + public function getAvatar($idOrEmail, $size = 96, $default = '', $alt = false) { return get_avatar($idOrEmail, $size, $default, $alt); } @@ -345,7 +362,7 @@ function getAvatar($idOrEmail, $size = 96, $default = '', $alt = false) * * @since 3.5.0 * - * @param int $userId Optional. User ID. Defaults to the current user. + * @param integer|null $userId Optional. User ID. Defaults to the current user. * @return string URL to edit user page or empty string. */ public function getEditUserLink($userId = null) @@ -355,7 +372,7 @@ public function getEditUserLink($userId = null) } $currentUserId = $this->getCurrentUserId(); - if (!$userId) { + if (is_null($userId)) { $userId = $currentUserId; } @@ -444,6 +461,10 @@ protected function setPluginFile($pluginFile) return $this; } + /** + * @param string $pluginFile + * @return string + */ private function guessPluginFilePath($pluginFile) { if (!defined('WP_PLUGIN_DIR')) { @@ -528,7 +549,7 @@ public function registerPluginScript($name, $pluginRelatedPath, array $dependenc * @param string $path * @param array $dependencies * @param string $version - * @param string $isInFooter + * @param boolean $isInFooter * @return WpTesting_WordPressFacade */ public function registerScript($name, $path, array $dependencies = array(), $version = false, $isInFooter = false) @@ -641,7 +662,7 @@ public function locateTemplate($templateNames, $isLoad = false, $isRequireOnce = * * @since 1.0.0 * - * @param number|WP_Post $id + * @param integer|WP_Post|stdClass $id * @param string $isLeaveName * @return string|bool */ @@ -857,8 +878,9 @@ public function didAction($tag) * @param int $priority Optional. The priority of the function. Default 10. * @return WpTesting_WordPressFacade */ - public function removeAction($tag, $function, $priority = 10) { - remove_action($tag, $function); + public function removeAction($tag, $function, $priority = 10) + { + remove_action($tag, $function, $priority); return $this; } @@ -885,15 +907,15 @@ public function addFilter($tag, $function, $priority = 10, $functionArgsCount = * @since 2.5.0 * * @param string $tag The name of the filter hook. - * @param callback|bool $function Optional. The callback to check for. Default false. - * @return false|int If $function is omitted, returns boolean for whether the hook has + * @param callback|boolean $function Optional. The callback to check for. Default false. + * @return boolean|integer If $function is omitted, returns boolean for whether the hook has * anything registered. When checking a specific function, the priority of that * hook is returned, or false if the function is not attached. When using the * $function_to_check argument, this function may return a non-boolean value * that evaluates to false (e.g.) 0, so use the === operator for testing the * return value. */ - public function hasFilter($tag, $function) + public function hasFilter($tag, $function = false) { return has_filter($tag, $function); } @@ -906,7 +928,7 @@ public function hasFilter($tag, $function) */ public function addFilterOnce($tag, $function, $priority = 10, $functionArgsCount = 1) { - if ($this->hasFilter($tag, $function)) { + if ($this->hasFilter($tag, $function) !== false) { return $this; } return $this->addFilter($tag, $function, $priority, $functionArgsCount); @@ -951,7 +973,6 @@ public function removeFilter($tag, $functionToRemove, $priority = 10, $acceptedA * * @param string $tag The name of the filter hook. * @param mixed $value The value on which the filters hooked to `$tag` are applied on. - * @param mixed $var Additional variables passed to the functions hooked to `$tag`. * @return mixed The filtered value after all hooked functions are applied to it. */ public function applyFilters($tag, $value) @@ -1025,7 +1046,7 @@ public function removeShortcode($tag) * @param string $shortcode Optional. The name of the shortcode, provided for context to enable filtering * @return array Combined and filtered attribute list. */ - function sanitazeShortcodeAttributes($defaults, $attributes, $shortcode = '') + public function sanitazeShortcodeAttributes($defaults, $attributes, $shortcode = '') { return shortcode_atts($defaults, $attributes, $shortcode); } @@ -1086,9 +1107,13 @@ public function getMetaBoxes($screen = null, $context = 'advanced', $priority = */ public function setMetaBoxes($values, $screen = null, $context = 'advanced', $priority = 'default') { - return $this->processMetaBoxes($screen, $context, $priority, __FUNCTION__, $values); + $this->processMetaBoxes($screen, $context, $priority, __FUNCTION__, $values); + return $this; } + /** + * @return array + */ protected function processMetaBoxes($screen, $context, $priority, $action, $values) { global $wp_meta_boxes; @@ -1107,10 +1132,9 @@ protected function processMetaBoxes($screen, $context, $priority, $action, $valu if ('getMetaBoxes' == $action) { return $wp_meta_boxes[$page][$context][$priority]; - } - if ('setMetaBoxes' == $action) { + } elseif ('setMetaBoxes' == $action) { $wp_meta_boxes[$page][$context][$priority] = $values; - return $this; + return array(); } } @@ -1227,7 +1251,7 @@ public function addMenuPage($pageTitle, $menuTitle, $capability, $menuSlug, $fun * @param string $capability The capability required for this menu to be displayed to the user. * @param string $menuSlug The slug name to refer to this menu by (should be unique for this menu) * @param callback $function The function to be called to output the content for this page. - * @return false|string The resulting page's hook_suffix, or false if the user does not have the capability required. + * @return string|boolean The resulting page's hook_suffix, or false if the user does not have the capability required. */ public function addSubmenuPage($parentSlug, $pageTitle, $menuTitle, $capability, $menuSlug, $function = '') { diff --git a/src/bootstrap.php b/src/bootstrap.php new file mode 100644 index 00000000..f1824df8 --- /dev/null +++ b/src/bootstrap.php @@ -0,0 +1,9 @@ + Date: Thu, 1 Oct 2015 22:36:20 +0600 Subject: [PATCH 03/22] Table widgets: Avoid array references and fix docs * Avoid end/array_keys Fix phpdocs: * Allow integers in render_static_column, cast row_number to int * Fix/add return types --- src/Template/Test/Editor/metabox-options.php | 3 ++- src/Widget/ListTable.php | 9 ++++++--- src/Widget/ListTableColumn.php | 10 ++++++++++ src/Widget/PassingTable.php | 6 +++--- src/Widget/PassingTable/Admin.php | 8 +++++--- src/Widget/PassingTable/User.php | 2 +- src/Widget/PlaceholderTemplate/Collection.php | 4 ++-- 7 files changed, 29 insertions(+), 13 deletions(-) diff --git a/src/Template/Test/Editor/metabox-options.php b/src/Template/Test/Editor/metabox-options.php index 30d10b91..154980b6 100644 --- a/src/Template/Test/Editor/metabox-options.php +++ b/src/Template/Test/Editor/metabox-options.php @@ -1,4 +1,5 @@ - + + $option): ?> diff --git a/src/Widget/ListTable.php b/src/Widget/ListTable.php index f8471141..22e2bb2b 100644 --- a/src/Widget/ListTable.php +++ b/src/Widget/ListTable.php @@ -121,14 +121,17 @@ public function prepare_items() 'total_pages' => ceil($total / $this->records_per_page) )); - $this->row_number = ($this->get_pagenum()-1) * $this->records_per_page; + $this->row_number = intval(($this->get_pagenum()-1) * $this->records_per_page); if ($this->is_order_desc()) { - $this->row_number = ($total + 1) - $this->row_number; + $this->row_number = intval(($total + 1) - $this->row_number); } return $this; } + /** + * @return boolean + */ public function has_items() { if ($this->items instanceof fRecordSet) { @@ -211,7 +214,7 @@ public function column_default($item, $column_name) /** * @param WpTesting_Model_AbstractModel $item * @param string $column_name - * @return string + * @return string|integer */ protected function render_static_column(WpTesting_Model_AbstractModel $item, $column_name) { diff --git a/src/Widget/ListTableColumn.php b/src/Widget/ListTableColumn.php index a2d632ec..940d8d7f 100644 --- a/src/Widget/ListTableColumn.php +++ b/src/Widget/ListTableColumn.php @@ -3,17 +3,27 @@ abstract class WpTesting_Widget_ListTableColumn { + /** + * @return string + */ abstract public function key(); + /** + * @return string + */ public function placeAfter() { return null; } + /** + * @return string + */ abstract public function title(); /** * @param WpTesting_Model_AbstractModel $item + * @return string */ abstract public function value($item); } diff --git a/src/Widget/PassingTable.php b/src/Widget/PassingTable.php index 16e0dd19..f2d5e299 100644 --- a/src/Widget/PassingTable.php +++ b/src/Widget/PassingTable.php @@ -40,20 +40,20 @@ protected function render_filter_controls() /** * @param WpTesting_Model_Passing $item * @param string $column_name - * @return string + * @return string|integer */ protected function render_static_column(WpTesting_Model_Passing $item, $column_name) { switch($column_name) { case 'passing_created': - return $item->getCreated(); + return $item->getCreated()->__toString(); } return ''; } /** - * @return WpTesting_Model_Test[] + * @return fRecordSet|WpTesting_Model_Test[] */ abstract protected function find_tests(); diff --git a/src/Widget/PassingTable/Admin.php b/src/Widget/PassingTable/Admin.php index f2782f6e..55483110 100644 --- a/src/Widget/PassingTable/Admin.php +++ b/src/Widget/PassingTable/Admin.php @@ -125,7 +125,8 @@ protected function find_years_months() return WpTesting_Query_Passing::create()->queryAllMonths(); } - public function column_cb(WpTesting_Model_Passing $item) { + public function column_cb(WpTesting_Model_Passing $item) + { $label = $this->render_tag('label', array( 'class' => 'screen-reader-text', 'for' => 'cb-select-' . $item->getId(), @@ -146,7 +147,7 @@ public function column_cb(WpTesting_Model_Passing $item) { /** * @param WpTesting_Model_Passing $item * @param string $column_name - * @return string + * @return string|integer */ protected function render_static_column(WpTesting_Model_Passing $item, $column_name) { @@ -224,7 +225,8 @@ protected function render_static_column(WpTesting_Model_Passing $item, $column_n return parent::render_static_column($item, $column_name); } - public function get_views() { + public function get_views() + { $results = WpTesting_Query_Passing::create()->countAllStatuses(); $views = array( 'all' => '', diff --git a/src/Widget/PassingTable/User.php b/src/Widget/PassingTable/User.php index a9e13b28..05b769f6 100644 --- a/src/Widget/PassingTable/User.php +++ b/src/Widget/PassingTable/User.php @@ -55,7 +55,7 @@ protected function find_years_months() /** * @param WpTesting_Model_Passing $item * @param string $column_name - * @return string + * @return string|integer */ protected function render_static_column(WpTesting_Model_Passing $item, $column_name) { diff --git a/src/Widget/PlaceholderTemplate/Collection.php b/src/Widget/PlaceholderTemplate/Collection.php index bbcf0128..753d0e17 100644 --- a/src/Widget/PlaceholderTemplate/Collection.php +++ b/src/Widget/PlaceholderTemplate/Collection.php @@ -3,9 +3,9 @@ class WpTesting_Widget_PlaceholderTemplate_Collection { /** - * @var WpTesting_Widget_PlaceholderTemplate[] + * @var array|WpTesting_Widget_PlaceholderTemplate[] */ - private $templates; + private $templates = array(); /** * Set template by key From 3822857083a62297aea1bbaa78b3bedd3d8db94f Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Thu, 1 Oct 2015 22:37:20 +0600 Subject: [PATCH 04/22] Queries: Improve return types and extract singleTranslatedQuery * Add models-as-array to return types * Extract singleTranslatedQuery to avoid duplication and has good checks --- src/Query/AbstractQuery.php | 24 ++++++++++++++++++++++-- src/Query/AbstractTerm.php | 2 +- src/Query/GlobalAnswer.php | 2 +- src/Query/Passing.php | 13 ++++++++----- src/Query/Scale.php | 2 +- src/Query/Test.php | 12 ++++++------ 6 files changed, 39 insertions(+), 16 deletions(-) diff --git a/src/Query/AbstractQuery.php b/src/Query/AbstractQuery.php index 2df0ca33..c495c66f 100644 --- a/src/Query/AbstractQuery.php +++ b/src/Query/AbstractQuery.php @@ -21,11 +21,31 @@ public static function create($className = __CLASS__) } /** - * @return WpTesting_Model_AbstractModel[] + * @return fRecordSet|WpTesting_Model_AbstractModel[] */ public function findAll() { return fRecordSet::build($this->modelName); } -} \ No newline at end of file + /** + * Translates one SQL statement using fSQLTranslation and executes it + * + * @param string $sql + * @return fResult + * @throws BadMethodCallException + */ + protected function singleTranslatedQuery($sql) + { + $arguments = func_get_args(); + $arguments[0] = $sql; + $result = call_user_func_array(array($this->db, 'translatedQuery'), $arguments); + if ($result instanceof fResult) { + return $result; + } + if (is_array($result) && isset($result[0]) && $result[0] instanceof fResult) { + return $result[0]; + } + throw new BadMethodCallException('Result of translatedQuery is not fRecordSet: ' . var_export($result, true)); + } +} diff --git a/src/Query/AbstractTerm.php b/src/Query/AbstractTerm.php index 121534c5..74b02046 100644 --- a/src/Query/AbstractTerm.php +++ b/src/Query/AbstractTerm.php @@ -35,4 +35,4 @@ protected function findByParams(array $where = array()) throw new fNotFoundException($this->modelName . ' not found by conditions: ' . var_export($where, true)); } } -} \ No newline at end of file +} diff --git a/src/Query/GlobalAnswer.php b/src/Query/GlobalAnswer.php index 59f42afd..3576022f 100644 --- a/src/Query/GlobalAnswer.php +++ b/src/Query/GlobalAnswer.php @@ -23,4 +23,4 @@ public function findByName($name) { return parent::findByName($name); } -} \ No newline at end of file +} diff --git a/src/Query/Passing.php b/src/Query/Passing.php index cacd58f2..66b84e23 100644 --- a/src/Query/Passing.php +++ b/src/Query/Passing.php @@ -14,6 +14,9 @@ public function findAllPagedSorted($page, $recordsPerPage = 10, $orderBy = array return $this->findAllPagedSortedByParams(array(), $page, $recordsPerPage, $orderBy); } + /** + * @return fRecordSet|WpTesting_Model_Passing[] + */ public function findAllPagedSortedByParams($params, $page, $recordsPerPage = 10, $orderBy = array()) { $conditions = array(); @@ -61,7 +64,7 @@ public function findAllPagedSortedByParams($params, $page, $recordsPerPage = 10, /** * @param array $ids * @param array $orderBy - * @return fRecordSet + * @return fRecordSet|WpTesting_Model_Passing[] */ public function findAllByIds($ids, $orderBy = array()) { @@ -73,7 +76,7 @@ public function findAllByIds($ids, $orderBy = array()) /** * Passings sorted by the order of provided $ids * @param array $ids - * @return fRecordSet + * @return fRecordSet|WpTesting_Model_Passing[] */ public function findAllByIdsSorted($ids) { @@ -95,7 +98,7 @@ public function queryAllMonths() */ public function queryAllMonthsByRespondent($respondentId) { - return $this->db->translatedQuery(' + return $this->singleTranslatedQuery(' SELECT DISTINCT YEAR(passing_created) AS created_year, MONTH(passing_created) AS created_month FROM %r WHERE (respondent_id = %i OR %i = 0) @@ -108,10 +111,10 @@ public function queryAllMonthsByRespondent($respondentId) */ public function countAllStatuses() { - return $this->db->translatedQuery(' + return $this->singleTranslatedQuery(' SELECT passing_status, COUNT(*) AS passing_count FROM %r GROUP BY passing_status ', $this->tableName); } -} \ No newline at end of file +} diff --git a/src/Query/Scale.php b/src/Query/Scale.php index 91f4f82a..53f35b7e 100644 --- a/src/Query/Scale.php +++ b/src/Query/Scale.php @@ -23,4 +23,4 @@ public function findByName($name) { return parent::findByName($name); } -} \ No newline at end of file +} diff --git a/src/Query/Test.php b/src/Query/Test.php index bf025a7e..50802994 100644 --- a/src/Query/Test.php +++ b/src/Query/Test.php @@ -24,7 +24,7 @@ public function findByIdOrName($id, $name) /** * @param array $orderBy - * @return WpTesting_Model_Test[] + * @return fRecordSet|WpTesting_Model_Test[] */ public function findAll(array $orderBy = array()) { @@ -33,7 +33,7 @@ public function findAll(array $orderBy = array()) /** * @param array $orderBy - * @return WpTesting_Model_Test[] + * @return fRecordSet|WpTesting_Model_Test[] */ public function findAllPublished(array $orderBy = array(), $limit = null) { @@ -58,7 +58,7 @@ public function findAllByIds(array $ids = array()) /** * @param integer $respondentId * @param array $orderBy - * @return WpTesting_Model_Test[] + * @return fRecordSet|WpTesting_Model_Test[] */ public function findAllByPassingRespondent($respondentId, array $orderBy = array('Test.ID')) { @@ -82,7 +82,7 @@ public function findAllByPassingRespondent($respondentId, array $orderBy = array /** * @param array $where * @param array $orderBy - * @return WpTesting_Model_Test[] + * @return fRecordSet|WpTesting_Model_Test[] */ protected function findAllByParams(array $where = array(), array $orderBy = array(), $limit = null) { @@ -94,8 +94,8 @@ protected function findAllByParams(array $where = array(), array $orderBy = arra /** * @param array $where * @param array $orderBy - * @return WpTesting_Model_Test[] - * @throws fNoRemainingException When test is not found + * @return WpTesting_Model_Test + * @throws fNoRemainingException When test is not found */ protected function findFirstByParams(array $where = array(), array $orderBy = array()) { From a688436313433625db6a5fb9a74fc4f4d57b9129 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Thu, 1 Oct 2015 22:38:34 +0600 Subject: [PATCH 05/22] Components: Minor fixes, step strategy simplification * Remove unused code * Avoid DIRECTORY_SEPARATOR * Fix phpdoc return types * Make first step always current so we dont' need any checks in StepStrategy --- src/Addon/Updater.php | 4 ++-- src/Compatibility/JsonSerializable.php | 11 +++++++++-- src/Component/Loader.php | 2 +- src/Component/StepStrategy.php | 13 +++++++------ src/Component/StepStrategy/OneToOne.php | 1 - 5 files changed, 19 insertions(+), 12 deletions(-) diff --git a/src/Addon/Updater.php b/src/Addon/Updater.php index 1609bd90..4c09c873 100644 --- a/src/Addon/Updater.php +++ b/src/Addon/Updater.php @@ -20,7 +20,7 @@ public function add(WpTesting_Addon_IAddon $addon) $root = dirname($addon->getRoot()); $slug = basename($root); $metadataUrl = sprintf($this->metadataUrlFormat, $slug); - $pluginFile = $root . DIRECTORY_SEPARATOR . $slug . '.php'; + $pluginFile = $root . '/' . $slug . '.php'; $checkEachHours = 1; /** @@ -33,7 +33,7 @@ public function add(WpTesting_Addon_IAddon $addon) * @since 2015-07-31 * @author Ustimenko Alexander */ - $checker = PucFactory::buildUpdateChecker( + PucFactory::buildUpdateChecker( $metadataUrl, $pluginFile, '', diff --git a/src/Compatibility/JsonSerializable.php b/src/Compatibility/JsonSerializable.php index 7a7f82e7..f434faea 100644 --- a/src/Compatibility/JsonSerializable.php +++ b/src/Compatibility/JsonSerializable.php @@ -1,6 +1,13 @@ prefixToPath[$prefix])) { return; } - $path = str_replace('_', DIRECTORY_SEPARATOR, $class) . '.php'; + $path = str_replace('_', '/', $class) . '.php'; $path = str_replace($prefix, $this->prefixToPath[$prefix], $path); require_once $path; } diff --git a/src/Component/StepStrategy.php b/src/Component/StepStrategy.php index a754df9c..43ff2fb2 100644 --- a/src/Component/StepStrategy.php +++ b/src/Component/StepStrategy.php @@ -20,7 +20,7 @@ abstract class WpTesting_Component_StepStrategy protected $test; /** - * @var WpTesting_Model_Question[] + * @var fRecordSet|WpTesting_Model_Question[] */ protected $answeredQuestions; @@ -126,7 +126,7 @@ public function getQuestionsCount() public function getAnsweredQuestionsCount() { - return $this->answeredQuestions->count(); + return count($this->answeredQuestions); } /** @@ -147,6 +147,10 @@ protected function setTest(WpTesting_Model_Test $test) */ protected function addStep(WpTesting_Model_Step $step, $isCurrent = true) { + // First step always current + if (empty($this->steps)) { + $isCurrent = true; + } $this->steps[] = $step; if ($isCurrent) { $this->currentStep = $step; @@ -170,15 +174,12 @@ abstract protected function fillSteps(); */ protected function getSteps() { - if (is_null($this->currentStep)) { + if (empty($this->steps)) { $this->fillSteps(); if (!count($this->steps)) { $emptyQuestions = fRecordSet::buildFromArray('WpTesting_Model_Question', array()); $this->addStep(new WpTesting_Model_Step('', $emptyQuestions)); } - if (is_null($this->currentStep)) { - $this->currentStep = reset($this->steps); - } $this->setupTotalsAndNumbers(); } diff --git a/src/Component/StepStrategy/OneToOne.php b/src/Component/StepStrategy/OneToOne.php index ddc6ccf4..342e004e 100644 --- a/src/Component/StepStrategy/OneToOne.php +++ b/src/Component/StepStrategy/OneToOne.php @@ -9,7 +9,6 @@ class WpTesting_Component_StepStrategy_OneToOne extends WpTesting_Component_Step protected function fillSteps() { $questions = $this->test->buildQuestions(); - $total = $questions->count(); $answered = $this->answeredQuestions->count(); foreach ($questions as $q => $question) { $records = fRecordSet::buildFromArray('WpTesting_Model_Question', array($q => $question)); From d3b5f1be7258cd3cdc3b9489978bcd3479944101 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Thu, 1 Oct 2015 22:45:35 +0600 Subject: [PATCH 06/22] Doers: Clean code and fix phpdocs * Remove unused/unreachable code * Fix visibility * Add basic rights check in setting screen hook * Check if passing is null * Cast to array obviously & straight type compare * Avoid DIRECTORY_SEPARATOR Fix braces & phpdocs: * Fix return type, add recordset * Use more logical phpdoc for get referer and simplify logic * Use int in filter as in target * Make PassingBrowser/Admin compatible --- src/Doer/AbstractDoer.php | 16 ++++++++--- src/Doer/IRenderer.php | 1 - src/Doer/PassingBrowser.php | 29 ++++++++++++++++++-- src/Doer/PassingBrowser/Admin.php | 27 +++++++++---------- src/Doer/PassingBrowser/User.php | 2 +- src/Doer/PostBrowser.php | 10 +++++++ src/Doer/Shortcoder/Tests.php | 2 +- src/Doer/ShortcodesRegistrator.php | 2 +- src/Doer/TestEditor.php | 41 +++++++++++++++++++---------- src/Doer/TestPasser.php | 16 +++++++++-- src/Doer/TestPasser/Action.php | 13 +++++++-- src/Doer/TestPasser/FillForm.php | 13 +++++++++ src/Doer/TestPasser/GetResults.php | 2 +- src/Doer/TestPasser/ProcessForm.php | 5 ++++ 14 files changed, 137 insertions(+), 42 deletions(-) diff --git a/src/Doer/AbstractDoer.php b/src/Doer/AbstractDoer.php index bc449445..608e03be 100644 --- a/src/Doer/AbstractDoer.php +++ b/src/Doer/AbstractDoer.php @@ -14,12 +14,13 @@ abstract class WpTesting_Doer_AbstractDoer */ private $jsData = array(); + private $templateRoot = null; private $resourceIdPrefix = null; public function __construct(WpTesting_WordPressFacade $wp) { $this->wp = $wp; - $this->templateRoot = dirname(dirname($this->getClassFile())) . DIRECTORY_SEPARATOR . 'Template' . DIRECTORY_SEPARATOR; + $this->templateRoot = dirname(dirname($this->getClassFile())) . '/Template/'; $this->resourceIdPrefix = $this->getResourcePrefix('WpTesting', 'wpt_'); } @@ -30,7 +31,7 @@ protected function getClassFile() public function renderJsData() { - $root = dirname(dirname(__FILE__)) . DIRECTORY_SEPARATOR . 'Template' . DIRECTORY_SEPARATOR; + $root = dirname(dirname(__FILE__)) . '/Template/'; $this->output($root . 'Abstract/js-data.php', array( 'Wpt' => $this->jsData, )); @@ -129,6 +130,11 @@ private function getResourceNameFromPluginRelatedPath($pluginRelatedPath, $exten return $name; } + /** + * @param string $mainClassStart + * @param string $abbr + * @return string + */ private function getResourcePrefix($mainClassStart, $abbr) { $parts = explode('_', get_class($this)); @@ -239,7 +245,7 @@ protected function getClientIp() 'REMOTE_ADDR', ); - foreach ($candidateKeys as $key){ + foreach ($candidateKeys as $key) { $value = $this->getEnv($key); if ($key == 'REMOTE_ADDR' && $value == $this->getEnv('SERVER_ADDR')) { $value = $this->getEnv('HTTP_PC_REMOTE_ADDR'); @@ -297,6 +303,10 @@ protected function arrayMoveItemAfter($input, $sourceKey, $destinationKey) return $this->arrayMoveItemTo($input, $sourceKey, $destinationKey, 'after'); } + /** + * @param fRecordSet|array|JsonSerializable $object + * @return array|mixed + */ protected function toJson($object) { if ($object instanceof fRecordSet) { diff --git a/src/Doer/IRenderer.php b/src/Doer/IRenderer.php index 80cd9c7e..8fec4398 100644 --- a/src/Doer/IRenderer.php +++ b/src/Doer/IRenderer.php @@ -12,7 +12,6 @@ public function renderTextAsHtml($content); /** * Break content by more tag into excerpt and "more" part that hides under "more" link * @param string $content - * @param string $moreLabel * @return string */ public function renderWithMoreSplitted($content); diff --git a/src/Doer/PassingBrowser.php b/src/Doer/PassingBrowser.php index e7b65fc2..02e1ef50 100644 --- a/src/Doer/PassingBrowser.php +++ b/src/Doer/PassingBrowser.php @@ -3,7 +3,7 @@ abstract class WpTesting_Doer_PassingBrowser extends WpTesting_Doer_AbstractDoer { - protected $screenHook = ''; + private $screenHook = ''; protected $passingTableClass = ''; @@ -14,6 +14,10 @@ abstract class WpTesting_Doer_PassingBrowser extends WpTesting_Doer_AbstractDoer */ private $passingTable = null; + /** + * @throws LogicException + * @return self + */ public function registerPages() { $this->addMenuPages(); @@ -26,10 +30,27 @@ public function registerPages() } /** - * @return WpTesting_Doer_PassingBrowser + * @throws LogicException + * @return self */ abstract protected function addMenuPages(); + /** + * @param string|mixed $screenHook + * @throws LogicException + * @return self + */ + protected function setScreenHook($screenHook) + { + if (!is_string($screenHook)) { + throw new LogicException('You do not have rights to access this page'); + } + + $this->screenHook = $screenHook; + + return $this; + } + /** * Process action on page load */ @@ -42,6 +63,10 @@ public function loadPassingsPage() $this->processAction($table->current_action(), fRequest::get('passing_id', 'array')); } + /** + * @param array $columns + * @return array + */ public function managePassingsPageColumns($columns) { $this->wp diff --git a/src/Doer/PassingBrowser/Admin.php b/src/Doer/PassingBrowser/Admin.php index 54829724..cce05c24 100644 --- a/src/Doer/PassingBrowser/Admin.php +++ b/src/Doer/PassingBrowser/Admin.php @@ -19,11 +19,10 @@ public function registerPages() } /** - * @param WpTesting_Model_Passing[] $passings - * @param self $me + * @param fRecordSet|WpTesting_Model_Passing[] $passings * @return self */ - public function processActionTrash(fRecordSet $passings, WpTesting_Doer_PassingBrowser_Admin $me) + public function processActionTrash(fRecordSet $passings) { foreach ($passings as $passing) { /* @var $passing WpTesting_Model_Passing */ $passing->trash(); @@ -32,11 +31,10 @@ public function processActionTrash(fRecordSet $passings, WpTesting_Doer_PassingB } /** - * @param WpTesting_Model_Passing[] $passings - * @param self $me + * @param fRecordSet|WpTesting_Model_Passing[] $passings * @return self */ - public function processActionUntrash(fRecordSet $passings, WpTesting_Doer_PassingBrowser_Admin $me) + public function processActionUntrash(fRecordSet $passings) { foreach ($passings as $passing) { /* @var $passing WpTesting_Model_Passing */ $passing->publish(); @@ -45,11 +43,10 @@ public function processActionUntrash(fRecordSet $passings, WpTesting_Doer_Passin } /** - * @param WpTesting_Model_Passing[] $passings - * @param self $me + * @param fRecordSet|WpTesting_Model_Passing[] $passings * @return self */ - public function processActionDelete(fRecordSet $passings, WpTesting_Doer_PassingBrowser_Admin $me) + public function processActionDelete(fRecordSet $passings) { foreach ($passings as $passing) { /* @var $passing WpTesting_Model_Passing */ $passing->delete(true); @@ -64,23 +61,25 @@ protected function processAction($action, $ids) $this->wp->doAction('wp_testing_passing_browser_admin_process_' . $action, $passings, $this); $referer = $this->wp->getReferer(); - if ($referer) { - return $this->wp->safeRedirect($referer); + if (empty($referer)) { + $this->wp->redirect('?post_type=wpt_test&page=wpt_test_respondents_results'); + } else { + $this->wp->safeRedirect($referer); } - return $this->wp->redirect('?post_type=wpt_test&page=wpt_test_respondents_results'); + return $this; } protected function addMenuPages() { - $this->screenHook = $this->wp->addSubmenuPage( + $this->setScreenHook($this->wp->addSubmenuPage( 'edit.php?post_type=wpt_test', __('Respondents’ test results', 'wp-testing'), __('Respondents’ results', 'wp-testing'), 'activate_plugins', 'wpt_test_respondents_results', array($this, 'renderPassingsPage') - ); + )); $this->passingsPageTitle = __('Respondents’ test results', 'wp-testing'); diff --git a/src/Doer/PassingBrowser/User.php b/src/Doer/PassingBrowser/User.php index 8a97b8e6..34ddd382 100644 --- a/src/Doer/PassingBrowser/User.php +++ b/src/Doer/PassingBrowser/User.php @@ -15,7 +15,7 @@ protected function addMenuPages() $menuIcon = $this->isWordPressAlready('3.8') ? 'dashicons-editor-paste-text' : null; $this->wp->addMenuPage($mainTitle, $mainTitle, $capability, $mainSlug, $callback, $menuIcon, 5); - $this->screenHook = $this->wp->addSubmenuPage($mainSlug, $resultsTitle, $resultsTitle, $capability, $mainSlug, $callback); + $this->setScreenHook($this->wp->addSubmenuPage($mainSlug, $resultsTitle, $resultsTitle, $capability, $mainSlug, $callback)); $this->passingsPageTitle = __('Results', 'wp-testing'); return $this; diff --git a/src/Doer/PostBrowser.php b/src/Doer/PostBrowser.php index 4b5486a4..fd6474e2 100644 --- a/src/Doer/PostBrowser.php +++ b/src/Doer/PostBrowser.php @@ -3,6 +3,9 @@ class WpTesting_Doer_PostBrowser extends WpTesting_Doer_AbstractDoer { + /** + * @var array + */ private $hiddenIds = null; /** @@ -39,6 +42,10 @@ public function addTestsToQuery($query) } } + /** + * @param array $classes + * @return array + */ public function inheritPostClassesToTest($classes) { if (in_array('wpt_test', $classes)) { @@ -69,6 +76,9 @@ private function addTestToPostTypes($query) return $postTypes; } + /** + * @return array + */ private function queryHomepageHiddenTestsOnce() { if (!is_null($this->hiddenIds)) { diff --git a/src/Doer/Shortcoder/Tests.php b/src/Doer/Shortcoder/Tests.php index 9aaa01fe..0d79289b 100644 --- a/src/Doer/Shortcoder/Tests.php +++ b/src/Doer/Shortcoder/Tests.php @@ -8,7 +8,7 @@ protected function createShortcode(array $attributes) return new WpTesting_Model_Shortcode_Tests($this->wp, $attributes); } - function chooseTemplate(WpTesting_Model_Shortcode $shortcode) + protected function chooseTemplate(WpTesting_Model_Shortcode $shortcode) { return 'Shortcode/tests'; } diff --git a/src/Doer/ShortcodesRegistrator.php b/src/Doer/ShortcodesRegistrator.php index 2c9f4065..faa4a67e 100644 --- a/src/Doer/ShortcodesRegistrator.php +++ b/src/Doer/ShortcodesRegistrator.php @@ -25,7 +25,7 @@ public function __construct(WpTesting_WordPressFacade $wp, WpTesting_Facade_IORM $this->ormAware = $ormAware; $this->testPasserAware = $testPasserAware; - $this->shortcodes = $this->wp->applyFilters('wp_testing_shortcoder_shortcodes', array( + $this->shortcodes = (array)$this->wp->applyFilters('wp_testing_shortcoder_shortcodes', array( 'wpt_tests' => 'WpTesting_Doer_Shortcoder_Tests', 'wpt_test_read_more' => 'WpTesting_Doer_Shortcoder_TestReadMore', 'wpt_test_first_page' => 'WpTesting_Doer_Shortcoder_TestFirstPage', diff --git a/src/Doer/TestEditor.php b/src/Doer/TestEditor.php index d6cbdc6c..6445868e 100644 --- a/src/Doer/TestEditor.php +++ b/src/Doer/TestEditor.php @@ -63,7 +63,7 @@ public function allowMoreHtmlInTaxonomies() } if ($this->isWordPressAlready('3.5')) { - $this->wp->addFilter('wp_kses_allowed_html', array($this, 'filterAllowedHtmlInTaxonomies'), 10, 2); + $this->wp->addFilter('wp_kses_allowed_html', array($this, 'filterAllowedHtmlInTaxonomies')); } else { $this->wp->removeFilter('pre_term_description', 'wp_filter_kses'); } @@ -71,10 +71,7 @@ public function allowMoreHtmlInTaxonomies() return $this; } - /** - * @param WP_Post $post - */ - public function setDefaultMetaboxesOrder($post) + public function setDefaultMetaboxesOrder() { $boxes = $this->wp->getMetaBoxes('wpt_test', 'side', 'core'); $boxes = $this->arrayMoveItemAfter($boxes, 'wpt_result_page_options', 'submitdiv'); @@ -82,6 +79,11 @@ public function setDefaultMetaboxesOrder($post) $this->wp->setMetaBoxes($boxes, 'wpt_test', 'side', 'core'); } + /** + * @param array $args + * @param string $postId + * @return array + */ public function filterTermsChecklistArgs($args, $postId = null) { $taxonomy = $args['taxonomy']; @@ -101,6 +103,13 @@ public function filterTermsChecklistArgs($args, $postId = null) return $args; } + /** + * @param array $terms + * @param integer $objectIds + * @param array $taxonomies + * @param array $args + * @return array + */ public function filterForceSortObjectTerms($terms, $objectIds, $taxonomies, $args) { if (!isset($args['taxonomy']) || !in_array($args['taxonomy'], array('wpt_answer', 'wpt_scale', 'wpt_result'))) { @@ -113,6 +122,12 @@ public function filterForceSortObjectTerms($terms, $objectIds, $taxonomies, $arg return $terms; } + /** + * @param string $orderBy + * @param array $args + * @param string $taxonomies + * @return string + */ public function filterTermsOrderBy($orderBy, $args, $taxonomies = null) { if (is_null($taxonomies)) { // Old WP versions workaround @@ -135,7 +150,11 @@ public function filterTermsOrderBy($orderBy, $args, $taxonomies = null) return "FIELD(t.term_id, $ids) $order, name"; } - public function filterAllowedHtmlInTaxonomies($allowedTags, $context) + /** + * @param array $allowedTags + * @return array + */ + public function filterAllowedHtmlInTaxonomies($allowedTags) { $newTags = array( 'h1', 'h2', 'h3', 'h4', 'h5', @@ -209,10 +228,7 @@ private function getTestPageOptions() return $this->wp->applyFilters('wpt_test_editor_test_page_options', $options); } - /** - * @param WP_Post $item - */ - public function renderTestPageOptions($item) + public function renderTestPageOptions() { $this->renderMetaboxOptions($this->getTestPageOptions()); } @@ -241,10 +257,7 @@ private function getResultPageOptions() return $this->wp->applyFilters('wpt_test_editor_result_page_options', $options); } - /** - * @param WP_Post $item - */ - public function renderResultPageOptions($item) + public function renderResultPageOptions() { $this->renderMetaboxOptions($this->getResultPageOptions()); } diff --git a/src/Doer/TestPasser.php b/src/Doer/TestPasser.php index b0aa7d33..020ddc77 100644 --- a/src/Doer/TestPasser.php +++ b/src/Doer/TestPasser.php @@ -73,7 +73,6 @@ private function beforeRender(WpTesting_Model_Test $test) $isLive = (self::ACTION_FILL_FORM == $action || $this->test->isFinal()); if (!$isLive) { throw new UnexpectedValueException(sprintf('Test %d is under construction', $test->getId())); - return __('Test is under construction', 'wp-testing'); } $this->registerScripts()->wp->addFilter('body_class', array($this, 'addPassingActionCssClass')); @@ -82,6 +81,10 @@ private function beforeRender(WpTesting_Model_Test $test) return $this; } + /** + * @param WpTesting_Model_Test $test + * @return string + */ public function renderOutside(WpTesting_Model_Test $test) { try { @@ -110,6 +113,10 @@ public function addPassingActionCssClass($classes) return $classes; } + /** + * @param string $content + * @return string + */ public function renderOnFilter($content) { if ($this->canRenderOnFilter !== true) { @@ -142,7 +149,12 @@ public function renderOnFilter($content) return $renderedContent; } - public function renderTestContent($content) { + /** + * @param string $content + * @return string + */ + public function renderTestContent($content) + { $hasFilter = ($this->canRenderOnFilter === true); if ($hasFilter) { $this->canRenderOnFilter = false; diff --git a/src/Doer/TestPasser/Action.php b/src/Doer/TestPasser/Action.php index 09ae3f24..db1d5230 100644 --- a/src/Doer/TestPasser/Action.php +++ b/src/Doer/TestPasser/Action.php @@ -13,8 +13,17 @@ abstract class WpTesting_Doer_TestPasser_Action extends WpTesting_Doer_AbstractD */ protected $passing; + /** + * @param WpTesting_Model_Test $test + * @param WpTesting_Model_Passing $passing + * @return void + */ abstract public function beforeRender(WpTesting_Model_Test $test, WpTesting_Model_Passing $passing = null); + /** + * @param string $content + * @param string $template + * @return string + */ abstract public function renderContent($content, $template); - -} \ No newline at end of file +} diff --git a/src/Doer/TestPasser/FillForm.php b/src/Doer/TestPasser/FillForm.php index 62f1a723..a0a5a2b3 100644 --- a/src/Doer/TestPasser/FillForm.php +++ b/src/Doer/TestPasser/FillForm.php @@ -11,6 +11,10 @@ class WpTesting_Doer_TestPasser_FillForm extends WpTesting_Doer_TestPasser_Actio public function beforeRender(WpTesting_Model_Test $test, WpTesting_Model_Passing $passing = null) { + if (is_null($passing)) { + throw new InvalidArgumentException('Passing must exists on fill form step!'); + } + $this->test = $test; $this->passing = $passing; @@ -39,6 +43,11 @@ public function beforeRender(WpTesting_Model_Test $test, WpTesting_Model_Passing ; } + /** + * @param string $title + * @param string $separator + * @return string + */ public function extractTitleSeparator($title, $separator) { if (!empty($separator)) { @@ -176,6 +185,10 @@ private function generateHiddens(WpTesting_Model_Step $step) return $hiddens; } + /** + * @param array $matches + * @return string + */ private function stripNewLines($matches) { $result = $matches[0]; diff --git a/src/Doer/TestPasser/GetResults.php b/src/Doer/TestPasser/GetResults.php index b4ba83c9..a61ea325 100644 --- a/src/Doer/TestPasser/GetResults.php +++ b/src/Doer/TestPasser/GetResults.php @@ -84,7 +84,7 @@ private function dieNotFound() private function setupScalesDiagram(WpTesting_Model_Test $test, WpTesting_Model_Passing $passing) { - if (!$test->isShowScalesDiagram()) { + if ($test->isShowScalesDiagram() !== true) { return $this; } $sorryBrowser = sprintf(__('Sorry but your browser %s is not compatible to display the chart', 'wp-testing'), $this->getUserAgent()); diff --git a/src/Doer/TestPasser/ProcessForm.php b/src/Doer/TestPasser/ProcessForm.php index 8218ceb1..9766ba4c 100644 --- a/src/Doer/TestPasser/ProcessForm.php +++ b/src/Doer/TestPasser/ProcessForm.php @@ -5,6 +5,10 @@ class WpTesting_Doer_TestPasser_ProcessForm extends WpTesting_Doer_TestPasser_Ac public function beforeRender(WpTesting_Model_Test $test, WpTesting_Model_Passing $passing = null) { + if (is_null($passing)) { + throw new InvalidArgumentException('Passing must exists on fill form step!'); + } + $this->test = $test; $this->passing = $passing; $passing @@ -26,6 +30,7 @@ public function beforeRender(WpTesting_Model_Test $test, WpTesting_Model_Passing public function renderContent($content, $template) { // nothing here + return ''; } private function extractUuid($key, $data) From 9fcdce737cb80a8c545097261ac4afb3abd4bb57 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Fri, 2 Oct 2015 00:22:25 +0600 Subject: [PATCH 07/22] Models: Improve code, extract blablaRelated methods family, fix phpdocs Improve code: * Remove unused/useless code * Extract buildRelated, correct-named populateRelated, associateRelated, createRelated, linkrelated, listRelated, hasRelated and use chain in populateFromTest * Rename just hasRelated to hasRelatedIn * Avoid reset explode * Use locals instead of parents in AbstractModel (use local get) and Passing (use this) * Check for questions type and extract setter with checks in Step Fix phpdocs: * Use right phpdoc's method description * Fix return types, add recordset * Doc multitypes and fix param type --- src/Model/AbstractModel.php | 121 ++++++++++++++++++++------ src/Model/AbstractParent.php | 2 +- src/Model/AbstractTerm.php | 25 ++++-- src/Model/Answer.php | 41 ++++----- src/Model/Formula.php | 24 ++--- src/Model/Passing.php | 68 ++++++++------- src/Model/Question.php | 25 +++--- src/Model/Respondent.php | 10 +-- src/Model/Scale.php | 2 +- src/Model/Score.php | 6 +- src/Model/Shortcode.php | 6 +- src/Model/Shortcode/Attribute.php | 21 ++++- src/Model/Shortcode/Test.php | 5 +- src/Model/Shortcode/TestFirstPage.php | 7 -- src/Model/Step.php | 44 +++++++++- src/Model/Taxonomy.php | 2 +- src/Model/Test.php | 104 +++++++++++----------- 17 files changed, 316 insertions(+), 197 deletions(-) diff --git a/src/Model/AbstractModel.php b/src/Model/AbstractModel.php index 9a8bd6fc..dd43dca4 100644 --- a/src/Model/AbstractModel.php +++ b/src/Model/AbstractModel.php @@ -1,6 +1,6 @@ stripValuesSlashes(); } - protected function populateRelated($recursive = false) - { - if ($recursive) { - $one_to_many_relationships = $schema->getRelationships($table, 'one-to-many'); - foreach ($one_to_many_relationships as $relationship) { - $route_name = fORMSchema::getRouteNameFromRelationship('one-to-many', $relationship); - $related_class = fORM::classize($relationship['related_table']); - $method = 'populate' . fGrammar::pluralize($related_class); - $this->$method(TRUE, $route_name); - } - - $one_to_one_relationships = $schema->getRelationships($table, 'one-to-one'); - foreach ($one_to_one_relationships as $relationship) { - $route_name = fORMSchema::getRouteNameFromRelationship('one-to-one', $relationship); - $related_class = fORM::classize($relationship['related_table']); - $this->__call('populate' . $related_class, array(TRUE, $route_name)); - } - } - return $this; - } - /** + * @param WpTesting_Model_AbstractModel $me * @return array */ public static function getColumnsAsMethodsOnce($me) @@ -85,7 +65,7 @@ public static function getColumnsAsMethodsOnce($me) $table = fORM::tablize($class); self::$columnsAsMethodsCache[$class] = array(); foreach ($schema->getColumnInfo($table) as $column => $info) { - self::$columnsAsMethodsCache[$class][$column] = 'set' . fGrammar::camelize($column, TRUE); + self::$columnsAsMethodsCache[$class][$column] = 'set' . fGrammar::camelize($column, true); } } return self::$columnsAsMethodsCache[$class]; @@ -93,7 +73,7 @@ public static function getColumnsAsMethodsOnce($me) public function exists() { - if (isset($this->columnAliases['id']) && !is_null(parent::get($this->columnAliases['id']))) { + if (isset($this->columnAliases['id']) && !is_null($this->get('id'))) { return true; } return parent::exists(); @@ -158,7 +138,7 @@ public function reflectPhpDoc() $table = fORM::tablize($class); $schema = fORMSchema::retrieve($class); foreach ($schema->getColumnInfo($table) as $column => $columnInfo) { - $camelizedColumn = fGrammar::camelize($column, TRUE); + $camelizedColumn = fGrammar::camelize($column, true); // Get and set methods $fixedType = $columnInfo['type']; @@ -177,7 +157,8 @@ public function reflectPhpDoc() if ($fixedType == 'time') { $fixedType = 'fTime|string'; } - $firstFixedType = reset(explode('|', $fixedType)); + $fixedTypes = explode('|', $fixedType); + $firstFixedType = reset($fixedTypes); $signatures[] = $this->generateMagicMethodPhpDoc( 'get' . $camelizedColumn, array(), $firstFixedType, "Gets the current value of $column"); @@ -207,6 +188,88 @@ public function __call($methodName, $params) return parent::__call($methodName, $params); } + /** + * @param string $relatedModelClassName + * @param fRecordSet|array $records + * @param string $route + * @return self + */ + protected function associateRelated($relatedModelClassName, $records, $route = null) + { + $this->__call('associate' . $relatedModelClassName, array($records, $route)); + return $this; + } + + /** + * @param string $relatedModelClassName + * @param array $params + * @return fRecordSet + */ + protected function buildRelated($relatedModelClassName, $params = array()) + { + return $this->__call('build' . $relatedModelClassName, $params); + } + + /** + * @param string $relatedModelClassName + * @param string $route + * @return WpTesting_Model_AbstractModel + */ + protected function createRelated($relatedModelClassName, $route = null) + { + return $this->__call('create' . $relatedModelClassName, $route); + } + + /** + * @param string $relatedModelClassName + * @param string $route + * @return boolean + */ + protected function hasRelated($relatedModelClassName, $route = null) + { + return (boolean)$this->__call('has' . $relatedModelClassName, $route); + } + + /** + * @param string $relatedModelClassName + * @param string $route + * @return self + */ + protected function linkRelated($relatedModelClassName, $route = null) + { + $this->__call('link' . $relatedModelClassName, array($route)); + return $this; + } + + /** + * @param string $relatedModelClassName + * @param string $route + * @return array + */ + protected function listRelated($relatedModelClassName, $route = null) + { + return $this->__call('list' . $relatedModelClassName, array($route)); + } + + /** + * @param string $relatedModelClassName + * @param boolean $isRecursive + * @param string $route + * @return self + */ + protected function populateRelated($relatedModelClassName, $isRecursive = false, $route = null) + { + $this->__call('populate' . $relatedModelClassName, array($isRecursive, $route)); + return $this; + } + + /** + * @param string $methodName + * @param array $params + * @param string $returnType + * @param string $comment + * @return string + */ protected function generateMagicMethodPhpDoc($methodName, $params, $returnType, $comment) { $paramsDoc = array(); @@ -215,10 +278,10 @@ protected function generateMagicMethodPhpDoc($methodName, $params, $returnType, } $paramsDoc = implode(', ', $paramsDoc); $commentDoc = preg_replace('/\s+/', ' ', $comment); - return " * @method $returnType $methodName() $methodName($paramsDoc) $commentDoc"; + return " * @method $returnType $methodName($paramsDoc) $commentDoc"; } - protected function loadFromResult($result, $ignore_identity_map=FALSE) + protected function loadFromResult($result, $ignore_identity_map=false) { $row = $result->current(); foreach ($row as $key => $value) { @@ -276,7 +339,7 @@ protected function getWp() return $this->wp; } - public function hasRelated($records, $class) + public function hasRelatedIn($records, $class) { foreach ($records as $record) { if (isset($record->related_records[fORM::tablize($class)])) { diff --git a/src/Model/AbstractParent.php b/src/Model/AbstractParent.php index 2da5dcb3..6b088aa4 100644 --- a/src/Model/AbstractParent.php +++ b/src/Model/AbstractParent.php @@ -4,7 +4,7 @@ * Allows to use parent class object without knowing it's data. * Used in addons when adding behaviours. * - * @method integer getId() getId() Gets the current value of id + * @method integer getId() Gets the current value of id */ abstract class WpTesting_Model_AbstractParent extends WpTesting_Model_AbstractModel { diff --git a/src/Model/AbstractTerm.php b/src/Model/AbstractTerm.php index 1ffdfcfb..1ca36e99 100644 --- a/src/Model/AbstractTerm.php +++ b/src/Model/AbstractTerm.php @@ -1,11 +1,11 @@ buildWpTesting_Model_Taxonomy()->getRecord(0); + return $this->buildRelated('WpTesting_Model_Taxonomy')->getRecord(0); } /** @@ -33,19 +33,26 @@ public function getAbbr() return mb_substr($this->getTitleOnce(), 0, 1, 'UTF-8'); } + /** + * @return string + */ public function getDescription() { - /* @var $result fRecordset */ - $result = $this->buildWpTesting_Model_Taxonomy(); + $result = $this->buildRelated('WpTesting_Model_Taxonomy'); if (!$result->count()) { return null; } return $result->getRecord(0)->getDescription(); } + /** + * @param integer $index + * @return string + */ public function getCssClass($index = null) { - $name = strtolower(end(explode('_', get_class($this)))); + $classParts = explode('_', get_class($this)); + $name = strtolower(end($classParts)); $id = $this->getId(); $slug = $this->getSlug(); $css = "$name $name-id-$id $name-slug-$slug"; diff --git a/src/Model/Answer.php b/src/Model/Answer.php index f9e00e8e..c030d876 100644 --- a/src/Model/Answer.php +++ b/src/Model/Answer.php @@ -1,12 +1,14 @@ populateSelf()->populateRelated($recursive); - } - - protected function populateRelated($recursive = false) - { + $this->populateSelf(); if ($recursive) { - $this->populateWpTesting_Model_Score(true, 'answer_id'); + $this->populateRelated('WpTesting_Model_Score', true, 'answer_id'); } return $this; } @@ -85,25 +83,20 @@ public function getGlobalTitle() } /** - * @return WpTesting_Model_Score[] + * @return fRecordSet|WpTesting_Model_Score[] */ public function buildScores() { return $this->buildScoresOnce(); } - public function associateScores($scores) - { - $this->associateWpTesting_Model_Score($scores); - } - /** - * @return fRecordSet of WpTesting_Model_Score + * @return fRecordSet|WpTesting_Model_Score[] */ protected function buildScoresOnce() { if (is_null($this->scores)) { - $this->scores = $this->buildWpTesting_Model_Scores(); + $this->scores = $this->buildRelated('WpTesting_Model_Scores'); $this->scoresByScaleId = array(); foreach ($this->scores as $score) { $this->scoresByScaleId[$score->get('scale_id')] = $score; @@ -117,7 +110,7 @@ protected function buildScoresOnce() */ public function createGlobalAnswer() { - return $this->createWpTesting_Model_GlobalAnswer(); + return $this->createRelated('WpTesting_Model_GlobalAnswer'); } /** @@ -125,7 +118,7 @@ public function createGlobalAnswer() */ public function createQuestion() { - return $this->createWpTesting_Model_Question(); + return $this->createRelated('WpTesting_Model_Question'); } /** @@ -150,7 +143,7 @@ public function getScoreByScale(WpTesting_Model_Scale $scale) if (!isset($this->scoresByScaleId[$scale->getId()])) { $this->scoresByScaleId[$scale->getId()] = new WpTesting_Model_Score(); $this->scoresByScaleId[$scale->getId()]->setScaleId($scale->getId()); - $this->associateWpTesting_Model_Scores($scores->merge($this->scoresByScaleId[$scale->getId()])); + $this->associateRelated('WpTesting_Model_Scores', $scores->merge($this->scoresByScaleId[$scale->getId()])); } return $this->scoresByScaleId[$scale->getId()]; } diff --git a/src/Model/Formula.php b/src/Model/Formula.php index 7b7a8b64..318047fc 100644 --- a/src/Model/Formula.php +++ b/src/Model/Formula.php @@ -5,13 +5,13 @@ * * Values with percents are replaced for their percentage analogs (when source contains %). * - * @method integer getId() getId() Gets the current value of id - * @method integer getTestId() getTestId() Gets the current value of test id - * @method WpTesting_Model_Formula setTestId() setTestId(integer $id) Sets the value for test id - * @method integer getResultId() getResultId() Gets the current value of result id - * @method WpTesting_Model_Formula setResultId() setResultId(integer $id) Sets the value for result id - * @method string getSource() getSource() Gets the current value of source - * @method WpTesting_Model_Formula setSource() setSource(string $source) Sets the value for source + * @method integer getId() Gets the current value of id + * @method integer getTestId() Gets the current value of test id + * @method WpTesting_Model_Formula setTestId(integer $id) Sets the value for test id + * @method integer getResultId() Gets the current value of result id + * @method WpTesting_Model_Formula setResultId(integer $id) Sets the value for result id + * @method string getSource() Gets the current value of source + * @method WpTesting_Model_Formula setSource(string $source) Sets the value for source */ class WpTesting_Model_Formula extends WpTesting_Model_AbstractModel { @@ -40,7 +40,7 @@ public function resetValues() * Adds value to values list without rewriting. Converts value type to integer if it's not double. * * @param string $name - * @param numeric $value + * @param integer|float $value * @param float $percentageValue Required only when we have "%" in source * @throws InvalidArgumentException * @return WpTesting_Model_Formula @@ -229,7 +229,7 @@ public function addValues(array $values) */ public function createResult() { - return $this->createWpTesting_Model_Result(); + return $this->createRelated('WpTesting_Model_Result'); } public function validateSource(WpTesting_Model_Formula $me, &$values, &$oldValues, &$relatedRecords, &$cache, &$validationMessages) @@ -250,7 +250,7 @@ public function validateSource(WpTesting_Model_Formula $me, &$values, &$oldValue // Check for formula correctness /* @var $test WpTesting_Model_Test */ - $test = $me->createWpTesting_Model_Test()->setWp($this->getWp()); + $test = $me->createRelated('WpTesting_Model_Test')->setWp($this->getWp()); $varNames = array(); foreach ($test->buildFormulaVariables() as $var) { $varNames[] = $var->getSource(); @@ -271,7 +271,7 @@ protected function configure() * * @param string $name1 * @param string $name2 - * @return number + * @return integer */ protected function compareValueNames($name1, $name2) { @@ -293,7 +293,7 @@ protected function compareValueNames($name1, $name2) * * @param string $name1 * @param string $name2 - * @return number + * @return integer */ protected function compareValueNamesInverted($name1, $name2) { diff --git a/src/Model/Passing.php b/src/Model/Passing.php index 9ee0ab51..62a4b9b2 100644 --- a/src/Model/Passing.php +++ b/src/Model/Passing.php @@ -1,24 +1,24 @@ setCreated(time())->setModified(time())->setTestId($test->getId()); - parent::populate(true); - $this->linkWpTesting_Model_Answers(); - return $this; + $now = time(); + return $this + ->setCreated($now) + ->setModified($now) + ->setTestId($test->getId()) + ->populate(true) + ->linkRelated('WpTesting_Model_Answers') + ; } /** @@ -103,7 +107,7 @@ public function populateAll() $this->wp->doAction('wp_testing_passing_populate_all_before', $this); $_POST = $this->wp->applyFilters('wp_testing_passing_adapt_for_populate', $_POST, $this); - parent::populate(true); + $this->populate(true); $this->wp->doAction('wp_testing_passing_populate_all_after', $this); return $this; @@ -162,7 +166,7 @@ public function setRespondentId($respondentId) if (empty($respondentId)) { $respondentId = null; } - return parent::set('respondent_id', $respondentId); + return $this->set('respondent_id', $respondentId); } public function setStepStrategy(WpTesting_Component_StepStrategy $stepStrategy) @@ -204,15 +208,15 @@ public function getAnsweredQuestionsCount() } /** - * @return WpTesting_Model_Answer[] + * @return fRecordSet|WpTesting_Model_Answer[] */ public function buildAnswers() { - return $this->buildWpTesting_Model_Answers(); + return $this->buildRelated('WpTesting_Model_Answers'); } /** - * @return WpTesting_Model_Score[] + * @return fRecordSet|WpTesting_Model_Score[] */ public function buildAnswersScores() { @@ -228,7 +232,7 @@ public function buildAnswersScores() /** * Build scales and setup their ranges from test's questions * - * @return WpTesting_Model_Scale[] + * @return fRecordSet|WpTesting_Model_Scale[] */ public function buildScalesWithRange() { @@ -258,7 +262,7 @@ public function buildScalesWithRange() * Build scales and setup their ranges from test's questions. * Cached version. * - * @return WpTesting_Model_Scale[] + * @return fRecordSet|WpTesting_Model_Scale[] */ public function buildScalesWithRangeOnce() { @@ -271,7 +275,7 @@ public function buildScalesWithRangeOnce() /** * Prepare results through test, that has true formulas, using current test variables * - * @return WpTesting_Model_Result[] + * @return fRecordSet|WpTesting_Model_Result[] */ public function buildResults() { @@ -296,7 +300,7 @@ public function buildResults() */ public function createTest() { - return $this->createWpTesting_Model_Test()->setWp($this->getWp()); + return $this->createRelated('WpTesting_Model_Test')->setWp($this->getWp()); } public function trash() diff --git a/src/Model/Question.php b/src/Model/Question.php index 0ec2f3b3..d6a7e4bf 100644 --- a/src/Model/Question.php +++ b/src/Model/Question.php @@ -1,9 +1,9 @@ populateSelf()->populateRelated($recursive); - } - - protected function populateRelated($recursive = false) - { + $this->populateSelf(); if ($recursive) { - $this->populateWpTesting_Model_Answer(true, 'question_id'); + $this->populateRelated('WpTesting_Model_Answer', true, 'question_id'); } return $this; } /** - * @return WpTesting_Model_Answer[] + * @return fRecordSet|WpTesting_Model_Answer[] */ public function buildAnswers() { - return $this->buildWpTesting_Model_Answer(); + return $this->buildRelated('WpTesting_Model_Answer'); } public function associateAnswers($answers) { - $this->associateWpTesting_Model_Answer($answers); + $this->associateRelated('WpTesting_Model_Answer', $answers); } /** @@ -49,10 +45,11 @@ public function associateAnswers($answers) */ public function createTest() { - return $this->createWpTesting_Model_Test()->setWp($this->getWp()); + return $this->createRelated('WpTesting_Model_Test')->setWp($this->getWp()); } - public function jsonSerialize() { + public function jsonSerialize() + { return array( 'id' => $this->getId(), 'title' => $this->getTitle(), diff --git a/src/Model/Respondent.php b/src/Model/Respondent.php index 3162c17b..cfefedaf 100644 --- a/src/Model/Respondent.php +++ b/src/Model/Respondent.php @@ -1,10 +1,10 @@ maximum - min(array($this->minimum, 0)); - } + } /** * @return number diff --git a/src/Model/Score.php b/src/Model/Score.php index 4075d9c0..043492c7 100644 --- a/src/Model/Score.php +++ b/src/Model/Score.php @@ -1,8 +1,8 @@ createWpTesting_Model_Scale('scale_id'); + return $this->createRelated('WpTesting_Model_Scale', 'scale_id'); } } diff --git a/src/Model/Shortcode.php b/src/Model/Shortcode.php index bc76e465..5548f43a 100644 --- a/src/Model/Shortcode.php +++ b/src/Model/Shortcode.php @@ -37,13 +37,17 @@ public function getUniqueName() /** * Should be overrided by shortcodes, which could be identified by ids/names/other params - * @return mixed + * @return string */ protected function getUniqueIdentifier() { return null; } + /** + * @param WpTesting_Facade_IORM $ormAware + * @return array + */ public function getDataForTemplate(WpTesting_Facade_IORM $ormAware) { return array(); diff --git a/src/Model/Shortcode/Attribute.php b/src/Model/Shortcode/Attribute.php index fce6d521..610239d4 100644 --- a/src/Model/Shortcode/Attribute.php +++ b/src/Model/Shortcode/Attribute.php @@ -3,14 +3,30 @@ class WpTesting_Model_Shortcode_Attribute { + /** + * @var string + */ private $externalName; + + /** + * @var string + */ private $propertyName; + + /** + * @var mixed + */ private $defaultValue; private $allowMask; private $allowList; private $errorGuide; + /** + * @param string $externalName + * @param string $propertyName + * @param mixed $defaultValue + */ public function __construct($externalName, $propertyName = null, $defaultValue = null) { $this->externalName = $externalName; @@ -81,12 +97,15 @@ public function cleanValue($dirtyValue) return $dirtyValue; } + /** + * @return string + */ public function getPropertyName() { return $this->propertyName; } - private function formExceptionMessage($template) + private function formExceptionMessage() { $argsPhp52Workaround = func_get_args(); $message = call_user_func_array('sprintf', $argsPhp52Workaround); diff --git a/src/Model/Shortcode/Test.php b/src/Model/Shortcode/Test.php index 72ce3a58..9445c4b6 100644 --- a/src/Model/Shortcode/Test.php +++ b/src/Model/Shortcode/Test.php @@ -30,10 +30,13 @@ public function getDataForTemplate(WpTesting_Facade_IORM $ormAware) ); } + /** + * @return string + */ protected function getUniqueIdentifier() { $ids = array_filter(array($this->testId, $this->testName)); - return reset($ids); + return (string)reset($ids); } /** diff --git a/src/Model/Shortcode/TestFirstPage.php b/src/Model/Shortcode/TestFirstPage.php index 15ff9816..45ef23f8 100644 --- a/src/Model/Shortcode/TestFirstPage.php +++ b/src/Model/Shortcode/TestFirstPage.php @@ -4,11 +4,4 @@ class WpTesting_Model_Shortcode_TestFirstPage extends WpTesting_Model_Shortcode_ { const NAME = 'wpt_test_first_page'; - - public function getDataForTemplate(WpTesting_Facade_IORM $ormAware) - { - return array_merge(parent::getDataForTemplate($ormAware), array( - 'content' => null, - )); - } } diff --git a/src/Model/Step.php b/src/Model/Step.php index 8bf8e37d..1215dd0e 100644 --- a/src/Model/Step.php +++ b/src/Model/Step.php @@ -3,17 +3,28 @@ class WpTesting_Model_Step { private $title = ''; + + /** + * @var fRecordSet|WpTesting_Model_Question[] + */ private $questions = array(); + private $description = null; private $total = 1; private $number = 1; - public function __construct($title, fRecordSet $questions, $description = null) + /** + * @param string $title + * @param fRecordSet|WpTesting_Model_Question[] $questions + * @param string $description + * @throws InvalidArgumentException + */ + public function __construct($title, $questions, $description = null) { - $this->title = $title; - $this->questions = $questions; - $this->description = $description; + $this->title = $title; + $this->setQuestions($questions); + $this->description = $description; } public function setTotalAndNumber($total, $number) @@ -81,4 +92,29 @@ public function isLast() { return ($this->number == $this->total); } + + /** + * @param fRecordSet|WpTesting_Model_Question[] $questions + * @throws InvalidArgumentException + * @return self + */ + private function setQuestions($questions) + { + if (empty($questions) || count($questions) == 0) { + $this->questions = array(); + return $this; + } + + if (!is_a($questions, 'fRecordSet')) { + $questions = fRecordSet::buildFromArray('WpTesting_Model_Question', (array)$questions); + } + + if ($questions->getClass() != 'WpTesting_Model_Question') { + throw new InvalidArgumentException('Step require questions, but provided ' . $questions->getClass()); + } + + $this->questions = $questions; + + return $this; + } } diff --git a/src/Model/Taxonomy.php b/src/Model/Taxonomy.php index c7dd94b1..2e7c13b2 100644 --- a/src/Model/Taxonomy.php +++ b/src/Model/Taxonomy.php @@ -3,7 +3,7 @@ /** * WordPress needed model for category-like entities * - * @method string getDescription() getDescription() Gets the current value of description + * @method string getDescription() Gets the current value of description */ class WpTesting_Model_Taxonomy extends WpTesting_Model_AbstractModel { diff --git a/src/Model/Test.php b/src/Model/Test.php index 6a61848e..79ae1a78 100644 --- a/src/Model/Test.php +++ b/src/Model/Test.php @@ -1,30 +1,30 @@ me()->buildWpTesting_Model_Questions(); + return $this->me()->buildRelated('WpTesting_Model_Questions'); } /** - * @return WpTesting_Model_Question[] + * @return fRecordSet|WpTesting_Model_Question[] */ public function buildQuestionsWithAnswersAndScores() { @@ -85,16 +85,16 @@ public function buildQuestionsWithAnswersAndScores() if (!count($questions)) { return $questions; } - if ($this->me()->hasRelated($questions, 'WpTesting_Model_Answer')) { + if ($this->me()->hasRelatedIn($questions, 'WpTesting_Model_Answer')) { return $questions; } $answersById = $this->associateManyRelated($questions, 'WpTesting_Model_Answer', 'question_id'); - $scoresById = $this->associateManyRelated($answersById, 'WpTesting_Model_Score', 'answer_id'); + $this->associateManyRelated($answersById, 'WpTesting_Model_Score', 'answer_id'); return $questions; } /** - * @return WpTesting_Model_Question[] + * @return fRecordSet|WpTesting_Model_Question[] */ public function buildQuestionsWithAnswers() { @@ -102,15 +102,15 @@ public function buildQuestionsWithAnswers() if (!count($questions)) { return $questions; } - if ($this->me()->hasRelated($questions, 'WpTesting_Model_Answer')) { + if ($this->me()->hasRelatedIn($questions, 'WpTesting_Model_Answer')) { return $questions; } - $answersById = $this->associateManyRelated($questions, 'WpTesting_Model_Answer', 'question_id'); + $this->associateManyRelated($questions, 'WpTesting_Model_Answer', 'question_id'); return $questions; } /** - * @return WpTesting_Model_Scale[] + * @return fRecordSet|WpTesting_Model_Scale[] */ public function buildScales() { @@ -125,7 +125,7 @@ public function buildScales() /** * Build scales and setup their ranges from test's questions * - * @return WpTesting_Model_Scale[] + * @return fRecordSet|WpTesting_Model_Scale[] */ public function buildScalesWithRange() { @@ -133,7 +133,7 @@ public function buildScalesWithRange() if (!$scales->count()) { return $scales; } - $questionIds = array_filter($this->listWpTesting_Model_Questions()); + $questionIds = array_filter($this->listRelated('WpTesting_Model_Questions')); if (empty($questionIds)) { return $scales; } @@ -178,7 +178,7 @@ public function buildScalesWithRange() } /** - * @return WpTesting_Model_Result[] + * @return fRecordSet|WpTesting_Model_Result[] */ public function buildResults() { @@ -224,15 +224,15 @@ public function buildFormulaVariables(WpTesting_Model_Passing $passing = null) } /** - * @return WpTesting_Model_Formula[] + * @return fRecordSet|WpTesting_Model_Formula[] */ public function buildFormulas() { - return $this->buildWpTesting_Model_Formulas(); + return $this->buildRelated('WpTesting_Model_Formulas'); } /** - * @return WpTesting_Model_GlobalAnswer[] + * @return fRecordSet|WpTesting_Model_GlobalAnswer[] */ public function buildGlobalAnswers() { @@ -245,15 +245,15 @@ public function buildGlobalAnswers() } /** - * @return WpTesting_Model_Taxonomy[] + * @return fRecordSet|WpTesting_Model_Taxonomy[] */ protected function buildTaxonomies() { - return $this->buildWpTesting_Model_Taxonomy(); + return $this->buildRelated('WpTesting_Model_Taxonomy'); } /** - * @return fRecordSet of WpTesting_Model_Taxonomy + * @return fRecordSet|WpTesting_Model_Taxonomy[] */ protected function buildTaxonomiesOnce() { @@ -303,13 +303,13 @@ protected function getFormulasPrefix() /** * Adds new question associated to this test * @param string $title - * @return WpTesting_Model_Test + * @return self */ public function addQuestion($title) { $question = new WpTesting_Model_Question(); $question->setTitle($title); - $this->associateWpTesting_Model_Questions($this->buildQuestions()->merge($question)); + $this->associateRelated('WpTesting_Model_Questions', $this->buildQuestions()->merge($question)); return $this; } @@ -325,8 +325,8 @@ public function associateGlobalAnswer(WpTesting_Model_GlobalAnswer $globalAnswer private function associateAbstractTerm(WpTesting_Model_AbstractTerm $term) { - $this->associateWpTesting_Model_Taxonomies( - $this->buildWpTesting_Model_Taxonomies() + $this->associateRelated('WpTesting_Model_Taxonomies', + $this->buildRelated('WpTesting_Model_Taxonomies') ->merge($term->createTaxonomy()) ); return $this; @@ -457,7 +457,7 @@ public function canEditScores() { return true && $this->hasScales() - && $this->hasWpTesting_Model_Questions() + && $this->hasRelated('WpTesting_Model_Questions') && $this->hasAnswers() ; } @@ -630,7 +630,7 @@ public function adaptForPopulate($request, $testId) */ public function populateQuestions($isRecursive = false) { - $this->populateWpTesting_Model_Questions($isRecursive); + $this->populateRelated('WpTesting_Model_Questions', $isRecursive); $table = fORM::tablize('WpTesting_Model_Question'); $records =& $this->related_records[$table]['test_id']['record_set']; $records = $records->filter(array('getTitle!=' => '')); @@ -643,7 +643,7 @@ public function populateQuestions($isRecursive = false) */ public function populateFormulas($isRecursive = false) { - return $this->populateWpTesting_Model_Formulas($isRecursive); + return $this->populateRelated('WpTesting_Model_Formulas', $isRecursive); } /** @@ -700,7 +700,7 @@ public function getPublishedUrl() /** * Export as WP native content entity object * - * @return WP_Post + * @return WP_Post|stdClass */ public function toWpPost() { From 35335e7a5fb4cdaa47cb1e31e9a731bdc334bce0 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Fri, 2 Oct 2015 01:43:06 +0600 Subject: [PATCH 08/22] Refactor and minify code mass in migrations * Remove unneeded drops before table's create * Extract base migrations into standalone dir and use them as parents for all other * Use WpTesting_Migration_Base as base everywhere * Extract setUp method in base to setup local vars on every up/down * Prefix all migrations by WpTesting_Migration * Load all through composer classmap * Rename all methods/props in camel case * Extract $this->globalPrefix and $this->pluginPrefix and use it instead of constants * Add methods2diagram tool to see methods calls and classes * Add dump tool to diff master branch migrations with current branch to made it identical * Move methods between base migrations to have them only in needed classes * Add WpTesting_Migration_TableDefinition to have most often options as defaults there * Add chained methods to TableDefinition --- .gitignore | 2 + composer.json | 4 +- ...00000_WpTesting_Migration_AddWpTables.php} | 14 +- .../20140913082248_AddQuestionsTable.php | 43 --- ..._WpTesting_Migration_AddQuestionsTable.php | 13 + .../20140916030608_AddTestScoresTable.php | 57 ---- ...WpTesting_Migration_AddTestScoresTable.php | 33 +++ .../20140925023344_AddPassingsTables.php | 97 ------- ..._WpTesting_Migration_AddPassingsTables.php | 48 ++++ ...13_WpTesting_Migration_AddExampleTest.php} | 26 +- .../20141004124247_AddFormulasTable.php | 57 ---- ...7_WpTesting_Migration_AddFormulasTable.php | 23 ++ ...ng_Migration_AddFormulasToExampleTest.php} | 20 +- .../20141102190330_AllowEmptyFormulas.php | 18 -- ...WpTesting_Migration_AllowEmptyFormulas.php | 9 + .../20141108033658_AddPublishOnHomeMeta.php | 14 - ...Testing_Migration_AddPublishOnHomeMeta.php | 7 + .../20141122130034_DecodeFormulasSource.php | 21 -- ...Testing_Migration_DecodeFormulasSource.php | 22 ++ ...141126191658_SwitchToIndividualAnswers.php | 244 ------------------ ...ng_Migration_SwitchToIndividualAnswers.php | 216 ++++++++++++++++ .../20150117155757_AddPassingDetails.php | 16 -- ..._WpTesting_Migration_AddPassingDetails.php | 19 ++ .../20150120194216_AddResultPageOptions.php | 18 -- ...Testing_Migration_AddResultPageOptions.php | 10 + .../20150131233053_AddUserAgentToPassing.php | 14 - ...esting_Migration_AddUserAgentToPassing.php | 13 + .../20150201011503_AddTestPageOptions.php | 18 -- ...WpTesting_Migration_AddTestPageOptions.php | 10 + .../20150215143537_AddSortToAnswers.php | 14 - ...7_WpTesting_Migration_AddSortToAnswers.php | 14 + .../20150215150706_AddScalesSortOption.php | 16 -- ...pTesting_Migration_AddScalesSortOption.php | 7 + .../20150216181127_AddProgressMeterOption.php | 16 -- ...sting_Migration_AddProgressMeterOption.php | 7 + .../20150221150014_AddScalesDiagramOption.php | 16 -- ...sting_Migration_AddScalesDiagramOption.php | 7 + ...0150228141341_AddMultipleAnswersOption.php | 16 -- ...ing_Migration_AddMultipleAnswersOption.php | 7 + ...57_EnableAdvancedOptionsForDefaultTest.php | 20 -- ...on_EnableAdvancedOptionsForDefaultTest.php | 32 +++ ...gration_CleanUpExperimentalMigrations.php} | 2 +- .../20150324041508_AddSectionsTable.php | 59 ----- ...8_WpTesting_Migration_AddSectionsTable.php | 23 ++ .../20150426194928_AddFieldsTables.php | 111 -------- ...28_WpTesting_Migration_AddFieldsTables.php | 54 ++++ ...WpTesting_Migration_AddLinkInDemoTest.php} | 6 +- ...30145555_RenamePassingColumnsInWpStyle.php | 29 --- ...igration_RenamePassingColumnsInWpStyle.php | 29 +++ .../20150530160000_AddStatusToPassings.php | 31 --- ...pTesting_Migration_AddStatusToPassings.php | 34 +++ .../20150614145310_NullifySectionQuestion.php | 20 -- ...sting_Migration_NullifySectionQuestion.php | 10 + ...182815_AllowSectionQuestionsDuplicates.php | 22 -- ...ration_AllowSectionQuestionsDuplicates.php | 18 ++ .../20150806190742_NullifySectionTitle.php | 22 -- ...pTesting_Migration_NullifySectionTitle.php | 9 + .../20150807044411_AddSectionDescription.php | 14 - ...esting_Migration_AddSectionDescription.php | 13 + ..._WpTesting_Migration_DecimalizeScores.php} | 6 +- db/migrations/wp_testing/Base/AddColumn.php | 26 ++ db/migrations/wp_testing/Base/AddMeta.php | 42 +++ .../wp_testing/Base/AddSingleTable.php | 38 +++ db/migrations/wp_testing/Base/Base.php | 47 ++++ .../wp_testing/Base/MigrateColumn.php | 92 +++++++ .../wp_testing/Base/MigrateTable.php | 74 ++++++ .../wp_testing/Base/NullifyColumn.php | 27 ++ .../wp_testing/Base/TableDefinition.php | 173 +++++++++++++ db/migrations/wp_testing/Base/UpdateData.php | 45 ++++ db/migrations/wp_testing/_BaseMigration.php | 92 ------- db/ruckusing.conf.php | 7 +- tools/refactoring/compare-schemas.sh | 16 ++ tools/refactoring/methods2diagram.sh | 31 +++ 73 files changed, 1342 insertions(+), 1158 deletions(-) rename db/migrations/wp_testing/{20140901000000_AddWpTables.php => 20140901000000_WpTesting_Migration_AddWpTables.php} (89%) delete mode 100644 db/migrations/wp_testing/20140913082248_AddQuestionsTable.php create mode 100644 db/migrations/wp_testing/20140913082248_WpTesting_Migration_AddQuestionsTable.php delete mode 100644 db/migrations/wp_testing/20140916030608_AddTestScoresTable.php create mode 100644 db/migrations/wp_testing/20140916030608_WpTesting_Migration_AddTestScoresTable.php delete mode 100644 db/migrations/wp_testing/20140925023344_AddPassingsTables.php create mode 100644 db/migrations/wp_testing/20140925023344_WpTesting_Migration_AddPassingsTables.php rename db/migrations/wp_testing/{20140928160013_AddExampleTest.php => 20140928160013_WpTesting_Migration_AddExampleTest.php} (94%) delete mode 100644 db/migrations/wp_testing/20141004124247_AddFormulasTable.php create mode 100644 db/migrations/wp_testing/20141004124247_WpTesting_Migration_AddFormulasTable.php rename db/migrations/wp_testing/{20141007035029_AddFormulasToExampleTest.php => 20141007035029_WpTesting_Migration_AddFormulasToExampleTest.php} (89%) delete mode 100644 db/migrations/wp_testing/20141102190330_AllowEmptyFormulas.php create mode 100644 db/migrations/wp_testing/20141102190330_WpTesting_Migration_AllowEmptyFormulas.php delete mode 100644 db/migrations/wp_testing/20141108033658_AddPublishOnHomeMeta.php create mode 100644 db/migrations/wp_testing/20141108033658_WpTesting_Migration_AddPublishOnHomeMeta.php delete mode 100644 db/migrations/wp_testing/20141122130034_DecodeFormulasSource.php create mode 100644 db/migrations/wp_testing/20141122130034_WpTesting_Migration_DecodeFormulasSource.php delete mode 100644 db/migrations/wp_testing/20141126191658_SwitchToIndividualAnswers.php create mode 100644 db/migrations/wp_testing/20141126191658_WpTesting_Migration_SwitchToIndividualAnswers.php delete mode 100644 db/migrations/wp_testing/20150117155757_AddPassingDetails.php create mode 100644 db/migrations/wp_testing/20150117155757_WpTesting_Migration_AddPassingDetails.php delete mode 100644 db/migrations/wp_testing/20150120194216_AddResultPageOptions.php create mode 100644 db/migrations/wp_testing/20150120194216_WpTesting_Migration_AddResultPageOptions.php delete mode 100644 db/migrations/wp_testing/20150131233053_AddUserAgentToPassing.php create mode 100644 db/migrations/wp_testing/20150131233053_WpTesting_Migration_AddUserAgentToPassing.php delete mode 100644 db/migrations/wp_testing/20150201011503_AddTestPageOptions.php create mode 100644 db/migrations/wp_testing/20150201011503_WpTesting_Migration_AddTestPageOptions.php delete mode 100644 db/migrations/wp_testing/20150215143537_AddSortToAnswers.php create mode 100644 db/migrations/wp_testing/20150215143537_WpTesting_Migration_AddSortToAnswers.php delete mode 100644 db/migrations/wp_testing/20150215150706_AddScalesSortOption.php create mode 100644 db/migrations/wp_testing/20150215150706_WpTesting_Migration_AddScalesSortOption.php delete mode 100644 db/migrations/wp_testing/20150216181127_AddProgressMeterOption.php create mode 100644 db/migrations/wp_testing/20150216181127_WpTesting_Migration_AddProgressMeterOption.php delete mode 100644 db/migrations/wp_testing/20150221150014_AddScalesDiagramOption.php create mode 100644 db/migrations/wp_testing/20150221150014_WpTesting_Migration_AddScalesDiagramOption.php delete mode 100644 db/migrations/wp_testing/20150228141341_AddMultipleAnswersOption.php create mode 100644 db/migrations/wp_testing/20150228141341_WpTesting_Migration_AddMultipleAnswersOption.php delete mode 100644 db/migrations/wp_testing/20150308201857_EnableAdvancedOptionsForDefaultTest.php create mode 100644 db/migrations/wp_testing/20150308201857_WpTesting_Migration_EnableAdvancedOptionsForDefaultTest.php rename db/migrations/wp_testing/{20150320053524_CleanUpExperimentalMigrations.php => 20150320053524_WpTesting_Migration_CleanUpExperimentalMigrations.php} (83%) delete mode 100644 db/migrations/wp_testing/20150324041508_AddSectionsTable.php create mode 100644 db/migrations/wp_testing/20150324041508_WpTesting_Migration_AddSectionsTable.php delete mode 100644 db/migrations/wp_testing/20150426194928_AddFieldsTables.php create mode 100644 db/migrations/wp_testing/20150426194928_WpTesting_Migration_AddFieldsTables.php rename db/migrations/wp_testing/{20150510175539_AddLinkInDemoTest.php => 20150510175539_WpTesting_Migration_AddLinkInDemoTest.php} (86%) delete mode 100644 db/migrations/wp_testing/20150530145555_RenamePassingColumnsInWpStyle.php create mode 100644 db/migrations/wp_testing/20150530145555_WpTesting_Migration_RenamePassingColumnsInWpStyle.php delete mode 100644 db/migrations/wp_testing/20150530160000_AddStatusToPassings.php create mode 100644 db/migrations/wp_testing/20150530160000_WpTesting_Migration_AddStatusToPassings.php delete mode 100644 db/migrations/wp_testing/20150614145310_NullifySectionQuestion.php create mode 100644 db/migrations/wp_testing/20150614145310_WpTesting_Migration_NullifySectionQuestion.php delete mode 100644 db/migrations/wp_testing/20150804182815_AllowSectionQuestionsDuplicates.php create mode 100644 db/migrations/wp_testing/20150804182815_WpTesting_Migration_AllowSectionQuestionsDuplicates.php delete mode 100644 db/migrations/wp_testing/20150806190742_NullifySectionTitle.php create mode 100644 db/migrations/wp_testing/20150806190742_WpTesting_Migration_NullifySectionTitle.php delete mode 100644 db/migrations/wp_testing/20150807044411_AddSectionDescription.php create mode 100644 db/migrations/wp_testing/20150807044411_WpTesting_Migration_AddSectionDescription.php rename db/migrations/wp_testing/{20150808133733_DecimalizeScores.php => 20150808133733_WpTesting_Migration_DecimalizeScores.php} (52%) create mode 100644 db/migrations/wp_testing/Base/AddColumn.php create mode 100644 db/migrations/wp_testing/Base/AddMeta.php create mode 100644 db/migrations/wp_testing/Base/AddSingleTable.php create mode 100644 db/migrations/wp_testing/Base/Base.php create mode 100644 db/migrations/wp_testing/Base/MigrateColumn.php create mode 100644 db/migrations/wp_testing/Base/MigrateTable.php create mode 100644 db/migrations/wp_testing/Base/NullifyColumn.php create mode 100644 db/migrations/wp_testing/Base/TableDefinition.php create mode 100644 db/migrations/wp_testing/Base/UpdateData.php delete mode 100644 db/migrations/wp_testing/_BaseMigration.php create mode 100755 tools/refactoring/compare-schemas.sh create mode 100755 tools/refactoring/methods2diagram.sh diff --git a/.gitignore b/.gitignore index 2a6e0905..7a6ea819 100644 --- a/.gitignore +++ b/.gitignore @@ -12,6 +12,8 @@ /tests/integration-environment/*.zip /tests/integration-environment/*.log /tests/integration-environment/*.pid +/tools/refactoring/*.sql +/tools/refactoring/*.svg /tools/screenshots/node_modules/ /tools/screenshots/raw/*.png /tools/screenshots/decorated/*.png diff --git a/composer.json b/composer.json index ecc5f9b5..756355c7 100644 --- a/composer.json +++ b/composer.json @@ -39,11 +39,9 @@ }, "autoload": { "classmap": [ + "db/migrations/wp_testing/", "src/", "vendor/yahnis-elsts/plugin-update-checker/plugin-update-checker.php" - ], - "files": [ - "db/migrations/wp_testing/_BaseMigration.php" ] }, "require-dev": { diff --git a/db/migrations/wp_testing/20140901000000_AddWpTables.php b/db/migrations/wp_testing/20140901000000_WpTesting_Migration_AddWpTables.php similarity index 89% rename from db/migrations/wp_testing/20140901000000_AddWpTables.php rename to db/migrations/wp_testing/20140901000000_WpTesting_Migration_AddWpTables.php index 486a1312..4476926e 100644 --- a/db/migrations/wp_testing/20140901000000_AddWpTables.php +++ b/db/migrations/wp_testing/20140901000000_WpTesting_Migration_AddWpTables.php @@ -3,12 +3,12 @@ /** * Required mostly for quick unit testing */ -class AddWpTables extends BaseMigration +class WpTesting_Migration_AddWpTables extends WpTesting_Migration_Base { public function up() { $this->execute(' - CREATE TABLE IF NOT EXISTS ' . WP_DB_PREFIX . 'posts ( + CREATE TABLE IF NOT EXISTS ' . $this->globalPrefix . 'posts ( ID bigint(20) unsigned NOT NULL AUTO_INCREMENT, post_author bigint(20) unsigned NOT NULL DEFAULT "0", post_date datetime NOT NULL DEFAULT "0000-00-00 00:00:00", @@ -40,7 +40,7 @@ public function up() ) DEFAULT CHARSET=utf8 '); $this->execute(' - CREATE TABLE IF NOT EXISTS ' . WP_DB_PREFIX . 'terms ( + CREATE TABLE IF NOT EXISTS ' . $this->globalPrefix . 'terms ( term_id bigint(20) unsigned NOT NULL AUTO_INCREMENT, name varchar(200) NOT NULL DEFAULT "", slug varchar(200) NOT NULL DEFAULT "", @@ -51,7 +51,7 @@ public function up() ) DEFAULT CHARSET=utf8 '); $this->execute(' - CREATE TABLE IF NOT EXISTS ' . WP_DB_PREFIX . 'users ( + CREATE TABLE IF NOT EXISTS ' . $this->globalPrefix . 'users ( ID bigint(20) unsigned NOT NULL AUTO_INCREMENT, user_login varchar(60) NOT NULL DEFAULT "", user_pass varchar(64) NOT NULL DEFAULT "", @@ -69,7 +69,7 @@ public function up() '); $this->execute(' - CREATE TABLE IF NOT EXISTS ' . WP_DB_PREFIX . 'term_taxonomy ( + CREATE TABLE IF NOT EXISTS ' . $this->globalPrefix . 'term_taxonomy ( term_taxonomy_id bigint(20) unsigned NOT NULL AUTO_INCREMENT, term_id bigint(20) unsigned NOT NULL DEFAULT "0", taxonomy varchar(32) NOT NULL DEFAULT "", @@ -82,7 +82,7 @@ public function up() ) DEFAULT CHARSET=utf8 '); $this->execute(' - CREATE TABLE IF NOT EXISTS ' . WP_DB_PREFIX . 'term_relationships ( + CREATE TABLE IF NOT EXISTS ' . $this->globalPrefix . 'term_relationships ( object_id bigint(20) unsigned NOT NULL DEFAULT "0", term_taxonomy_id bigint(20) unsigned NOT NULL DEFAULT "0", term_order int(11) NOT NULL DEFAULT "0", @@ -91,7 +91,7 @@ public function up() ) DEFAULT CHARSET=utf8 '); $this->execute(' - CREATE TABLE IF NOT EXISTS ' . WP_DB_PREFIX . 'postmeta ( + CREATE TABLE IF NOT EXISTS ' . $this->globalPrefix . 'postmeta ( meta_id bigint(20) unsigned NOT NULL AUTO_INCREMENT, post_id bigint(20) unsigned NOT NULL DEFAULT "0", meta_key varchar(255) DEFAULT NULL, diff --git a/db/migrations/wp_testing/20140913082248_AddQuestionsTable.php b/db/migrations/wp_testing/20140913082248_AddQuestionsTable.php deleted file mode 100644 index b740e827..00000000 --- a/db/migrations/wp_testing/20140913082248_AddQuestionsTable.php +++ /dev/null @@ -1,43 +0,0 @@ -drop_table(WPT_DB_PREFIX . 'questions'); - $table = $this->create_table(WPT_DB_PREFIX . 'questions', array( - 'id' => false, - 'options' => $this->get_table_engine_option(), - )); - $table->column('question_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - 'primary_key' => true, - 'auto_increment' => true, - )); - $table->column('test_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - $table->column('question_title', 'text', array( - 'null' => false, - )); - $table->finish(); - $global_prefix = WP_DB_PREFIX; - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - ALTER TABLE {$plugin_prefix}questions - ADD CONSTRAINT {$plugin_prefix}fk_question_test - FOREIGN KEY (test_id) - REFERENCES {$global_prefix}posts (ID) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_question_test (test_id) - "); - } - - public function down() - { - $this->drop_table(WPT_DB_PREFIX . 'questions'); - } -} diff --git a/db/migrations/wp_testing/20140913082248_WpTesting_Migration_AddQuestionsTable.php b/db/migrations/wp_testing/20140913082248_WpTesting_Migration_AddQuestionsTable.php new file mode 100644 index 00000000..8cb39c3b --- /dev/null +++ b/db/migrations/wp_testing/20140913082248_WpTesting_Migration_AddQuestionsTable.php @@ -0,0 +1,13 @@ +addForeignKeyToTest($table); + $table->addColumnText('question_title'); + } +} diff --git a/db/migrations/wp_testing/20140916030608_AddTestScoresTable.php b/db/migrations/wp_testing/20140916030608_AddTestScoresTable.php deleted file mode 100644 index 30cfb423..00000000 --- a/db/migrations/wp_testing/20140916030608_AddTestScoresTable.php +++ /dev/null @@ -1,57 +0,0 @@ -create_table(WPT_DB_PREFIX . 'scores', array( - 'id' => false, - 'options' => $this->get_table_engine_option(), - )); - $pkOptions = array( - 'unsigned' => true, - 'null' => false, - 'primary_key' => true, - ); - $table->column('answer_id', 'biginteger', $pkOptions); - $table->column('question_id', 'biginteger', $pkOptions); - $table->column('scale_id', 'biginteger', $pkOptions); - $table->column('score_value', 'tinyinteger', array( - 'null' => false, - 'default' => 0, - )); - $table->finish(); - - $global_prefix = WP_DB_PREFIX; - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - ALTER TABLE {$plugin_prefix}scores - - ADD CONSTRAINT {$plugin_prefix}fk_score_answer - FOREIGN KEY (answer_id) - REFERENCES {$global_prefix}terms (term_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_score_answer (answer_id), - - ADD CONSTRAINT {$plugin_prefix}fk_score_question - FOREIGN KEY (question_id) - REFERENCES {$plugin_prefix}questions (question_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_score_question (question_id), - - ADD CONSTRAINT {$plugin_prefix}fk_score_scale - FOREIGN KEY (scale_id) - REFERENCES {$global_prefix}terms (term_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_score_scale (scale_id) - "); - } - - public function down() - { - $this->drop_table(WPT_DB_PREFIX . 'scores'); - } -} diff --git a/db/migrations/wp_testing/20140916030608_WpTesting_Migration_AddTestScoresTable.php b/db/migrations/wp_testing/20140916030608_WpTesting_Migration_AddTestScoresTable.php new file mode 100644 index 00000000..5e4157bf --- /dev/null +++ b/db/migrations/wp_testing/20140916030608_WpTesting_Migration_AddTestScoresTable.php @@ -0,0 +1,33 @@ +createTable('scores') + ->addForeignKey('answer_id', array( + 'primary_key' => true, + 'keyName' => 'fk_score_answer', + 'referencedTable' => "{$this->globalPrefix}terms", + 'referencedKey' => 'term_id', + )) + ->addForeignKey('question_id', array( + 'primary_key' => true, + 'keyName' => 'fk_score_question', + 'referencedTable' => "{$this->pluginPrefix}questions", + )) + ->addForeignKey('scale_id', array( + 'primary_key' => true, + 'keyName' => 'fk_score_scale', + 'referencedTable' => "{$this->globalPrefix}terms", + 'referencedKey' => 'term_id', + )) + ->addColumnIntegerTiny('score_value', array('default' => 0)) + ->finish(); + } + + public function down() + { + $this->dropTable('scores'); + } +} diff --git a/db/migrations/wp_testing/20140925023344_AddPassingsTables.php b/db/migrations/wp_testing/20140925023344_AddPassingsTables.php deleted file mode 100644 index cbe3875f..00000000 --- a/db/migrations/wp_testing/20140925023344_AddPassingsTables.php +++ /dev/null @@ -1,97 +0,0 @@ -create_table(WPT_DB_PREFIX . 'passings', array( - 'id' => false, - 'options' => $this->get_table_engine_option(), - )); - $table->column('passing_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - 'primary_key' => true, - 'auto_increment' => true, - )); - $table->column('test_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - $table->column('respondent_id', 'biginteger', array( - 'unsigned' => true, - )); - $table->column('created', 'datetime', array( - 'null' => false, - )); - $table->column('modified', 'datetime', array( - 'null' => false, - )); - $table->finish(); - - $global_prefix = WP_DB_PREFIX; - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - ALTER TABLE {$plugin_prefix}passings - - ADD CONSTRAINT {$plugin_prefix}fk_passing_test - FOREIGN KEY (test_id) - REFERENCES {$global_prefix}posts (ID) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_passing_test (test_id), - - ADD CONSTRAINT {$plugin_prefix}fk_passing_respondent - FOREIGN KEY (respondent_id) - REFERENCES {$global_prefix}users (ID) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_passing_respondent (respondent_id) - "); - - $table = $this->create_table(WPT_DB_PREFIX . 'passing_answers', array( - 'id' => false, - 'options' => $this->get_table_engine_option(), - )); - $pkOptions = array( - 'unsigned' => true, - 'null' => false, - 'primary_key' => true, - ); - $table->column('answer_id', 'biginteger', $pkOptions); - $table->column('question_id', 'biginteger', $pkOptions); - $table->column('passing_id', 'biginteger', $pkOptions); - $table->finish(); - - $this->execute(" - ALTER TABLE {$plugin_prefix}passing_answers - - ADD CONSTRAINT {$plugin_prefix}fk_passing_answer_answer - FOREIGN KEY (answer_id) - REFERENCES {$global_prefix}terms (term_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_passing_answer_answer (answer_id), - - ADD CONSTRAINT {$plugin_prefix}fk_passing_answer_question - FOREIGN KEY (question_id) - REFERENCES {$plugin_prefix}questions (question_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_passing_answer_question (question_id), - - ADD CONSTRAINT {$plugin_prefix}fk_passing_answer_passing - FOREIGN KEY (passing_id) - REFERENCES {$plugin_prefix}passings (passing_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_passing_answer_passing (passing_id) - "); - } - - public function down() - { - $this->drop_table(WPT_DB_PREFIX . 'passing_answers'); - $this->drop_table(WPT_DB_PREFIX . 'passings'); - } -} diff --git a/db/migrations/wp_testing/20140925023344_WpTesting_Migration_AddPassingsTables.php b/db/migrations/wp_testing/20140925023344_WpTesting_Migration_AddPassingsTables.php new file mode 100644 index 00000000..e22c3866 --- /dev/null +++ b/db/migrations/wp_testing/20140925023344_WpTesting_Migration_AddPassingsTables.php @@ -0,0 +1,48 @@ +createTable('passings') + ->addPrimaryKey('passing_id') + ->addForeignKey('test_id', array( + 'keyName' => 'fk_passing_test', + 'referencedTable' => "{$this->globalPrefix}posts", + 'referencedKey' => 'ID', + )) + ->addNullableForeignKey('respondent_id', array( + 'keyName' => 'fk_passing_respondent', + 'referencedTable' => "{$this->globalPrefix}users", + 'referencedKey' => 'ID', + )) + ->addColumnDateTime('created') + ->addColumnDateTime('modified') + ->finish(); + + $this->createTable('passing_answers') + ->addForeignKey('answer_id', array( + 'primary_key' => true, + 'keyName' => 'fk_passing_answer_answer', + 'referencedTable' => "{$this->globalPrefix}terms", + 'referencedKey' => 'term_id', + )) + ->addForeignKey('question_id', array( + 'primary_key' => true, + 'keyName' => 'fk_passing_answer_question', + 'referencedTable' => "{$this->pluginPrefix}questions", + )) + ->addForeignKey('passing_id', array( + 'primary_key' => true, + 'keyName' => 'fk_passing_answer_passing', + 'referencedTable' => "{$this->pluginPrefix}passings", + )) + ->finish(); + } + + public function down() + { + $this->dropTable('passing_answers'); + $this->dropTable('passings'); + } +} diff --git a/db/migrations/wp_testing/20140928160013_AddExampleTest.php b/db/migrations/wp_testing/20140928160013_WpTesting_Migration_AddExampleTest.php similarity index 94% rename from db/migrations/wp_testing/20140928160013_AddExampleTest.php rename to db/migrations/wp_testing/20140928160013_WpTesting_Migration_AddExampleTest.php index 9933fa9e..5d6b9128 100644 --- a/db/migrations/wp_testing/20140928160013_AddExampleTest.php +++ b/db/migrations/wp_testing/20140928160013_WpTesting_Migration_AddExampleTest.php @@ -1,17 +1,17 @@ globalPrefix . 'posts'; + $terms = $this->globalPrefix . 'terms'; + $termTaxonomy = $this->globalPrefix . 'term_taxonomy'; + $termRelashionships = $this->globalPrefix . 'term_relationships'; + $questions = $this->pluginPrefix . 'questions'; + $scores = $this->pluginPrefix . 'scores'; $this->execute(" INSERT INTO $posts ( @@ -175,12 +175,12 @@ public function up() public function down() { - $posts = WP_DB_PREFIX . 'posts'; - $terms = WP_DB_PREFIX . 'terms'; - $termTaxonomy = WP_DB_PREFIX . 'term_taxonomy'; - $termRelashionships = WP_DB_PREFIX . 'term_relationships'; - $questions = WPT_DB_PREFIX . 'questions'; - $scores = WPT_DB_PREFIX . 'scores'; + $posts = $this->globalPrefix . 'posts'; + $terms = $this->globalPrefix . 'terms'; + $termTaxonomy = $this->globalPrefix . 'term_taxonomy'; + $termRelashionships = $this->globalPrefix . 'term_relationships'; + $questions = $this->pluginPrefix . 'questions'; + $scores = $this->pluginPrefix . 'scores'; $this->execute(" SET FOREIGN_KEY_CHECKS = 0; diff --git a/db/migrations/wp_testing/20141004124247_AddFormulasTable.php b/db/migrations/wp_testing/20141004124247_AddFormulasTable.php deleted file mode 100644 index 71e6a9d5..00000000 --- a/db/migrations/wp_testing/20141004124247_AddFormulasTable.php +++ /dev/null @@ -1,57 +0,0 @@ -create_table(WPT_DB_PREFIX . 'formulas', array( - 'id' => false, - 'options' => $this->get_table_engine_option(), - )); - $table->column('formula_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - 'primary_key' => true, - 'auto_increment' => true, - )); - $table->column('test_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - $table->column('result_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - $table->column('formula_source', 'text', array( - 'null' => false, - )); - $table->finish(); - - $global_prefix = WP_DB_PREFIX; - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - ALTER TABLE {$plugin_prefix}formulas - - ADD CONSTRAINT {$plugin_prefix}fk_formula_test - FOREIGN KEY (test_id) - REFERENCES {$global_prefix}posts (ID) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_formula_test (test_id), - - ADD CONSTRAINT {$plugin_prefix}fk_formula_result - FOREIGN KEY (result_id) - REFERENCES {$global_prefix}terms (term_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_formula_result (result_id), - - ADD UNIQUE INDEX uq_formula_test_result (test_id, result_id) - "); - } - - public function down() - { - $this->drop_table(WPT_DB_PREFIX . 'formulas'); - } -} diff --git a/db/migrations/wp_testing/20141004124247_WpTesting_Migration_AddFormulasTable.php b/db/migrations/wp_testing/20141004124247_WpTesting_Migration_AddFormulasTable.php new file mode 100644 index 00000000..7001b98a --- /dev/null +++ b/db/migrations/wp_testing/20141004124247_WpTesting_Migration_AddFormulasTable.php @@ -0,0 +1,23 @@ +addForeignKeyToTest($table); + $table + ->addForeignKey('result_id', array( + 'keyName' => 'fk_formula_result', + 'referencedTable' => "{$this->globalPrefix}terms", + 'referencedKey' => 'term_id', + )) + ->addColumnText('formula_source') + ->addIndexUnique('uq_formula_test_result', array( + 'test_id', + 'result_id' + )); + } +} diff --git a/db/migrations/wp_testing/20141007035029_AddFormulasToExampleTest.php b/db/migrations/wp_testing/20141007035029_WpTesting_Migration_AddFormulasToExampleTest.php similarity index 89% rename from db/migrations/wp_testing/20141007035029_AddFormulasToExampleTest.php rename to db/migrations/wp_testing/20141007035029_WpTesting_Migration_AddFormulasToExampleTest.php index 07ed5d3e..42fc6696 100644 --- a/db/migrations/wp_testing/20141007035029_AddFormulasToExampleTest.php +++ b/db/migrations/wp_testing/20141007035029_WpTesting_Migration_AddFormulasToExampleTest.php @@ -1,14 +1,14 @@ globalPrefix . 'posts'; + $terms = $this->globalPrefix . 'terms'; + $formulas = $this->pluginPrefix . 'formulas'; + $termTaxonomy = $this->globalPrefix . 'term_taxonomy'; + $termRelashionships = $this->globalPrefix . 'term_relationships'; $testSlug = 'eysencks-personality-inventory-epi-extroversionintroversion'; $testId = $this->field("SELECT ID FROM $posts WHERE post_type = 'wpt_test' AND post_name = '$testSlug' ORDER BY ID LIMIT 1"); @@ -55,10 +55,10 @@ public function up() public function down() { - $terms = WP_DB_PREFIX . 'terms'; - $formulas = WPT_DB_PREFIX . 'formulas'; - $termTaxonomy = WP_DB_PREFIX . 'term_taxonomy'; - $termRelashionships = WP_DB_PREFIX . 'term_relationships'; + $terms = $this->globalPrefix . 'terms'; + $formulas = $this->pluginPrefix . 'formulas'; + $termTaxonomy = $this->globalPrefix . 'term_taxonomy'; + $termRelashionships = $this->globalPrefix . 'term_relationships'; $this->execute(" SET FOREIGN_KEY_CHECKS = 0; diff --git a/db/migrations/wp_testing/20141102190330_AllowEmptyFormulas.php b/db/migrations/wp_testing/20141102190330_AllowEmptyFormulas.php deleted file mode 100644 index 90814960..00000000 --- a/db/migrations/wp_testing/20141102190330_AllowEmptyFormulas.php +++ /dev/null @@ -1,18 +0,0 @@ -change_column(WPT_DB_PREFIX . 'formulas', 'formula_source', 'text', array( - 'null' => true, - )); - } - - public function down() - { - $this->change_column(WPT_DB_PREFIX . 'formulas', 'formula_source', 'text', array( - 'null' => false, - )); - } -} diff --git a/db/migrations/wp_testing/20141102190330_WpTesting_Migration_AllowEmptyFormulas.php b/db/migrations/wp_testing/20141102190330_WpTesting_Migration_AllowEmptyFormulas.php new file mode 100644 index 00000000..d9cb1732 --- /dev/null +++ b/db/migrations/wp_testing/20141102190330_WpTesting_Migration_AllowEmptyFormulas.php @@ -0,0 +1,9 @@ +add_meta('wpt_publish_on_home', 1); - } - - public function down() - { - $this->remove_meta('wpt_publish_on_home'); - } -} diff --git a/db/migrations/wp_testing/20141108033658_WpTesting_Migration_AddPublishOnHomeMeta.php b/db/migrations/wp_testing/20141108033658_WpTesting_Migration_AddPublishOnHomeMeta.php new file mode 100644 index 00000000..611afbe6 --- /dev/null +++ b/db/migrations/wp_testing/20141108033658_WpTesting_Migration_AddPublishOnHomeMeta.php @@ -0,0 +1,7 @@ + 1); +} diff --git a/db/migrations/wp_testing/20141122130034_DecodeFormulasSource.php b/db/migrations/wp_testing/20141122130034_DecodeFormulasSource.php deleted file mode 100644 index 22cf2370..00000000 --- a/db/migrations/wp_testing/20141122130034_DecodeFormulasSource.php +++ /dev/null @@ -1,21 +0,0 @@ -select_all('SELECT * FROM ' . WPT_DB_PREFIX . 'formulas'); - foreach ($rows as $row) { - $this->query( - 'UPDATE ' . WPT_DB_PREFIX . 'formulas SET formula_source = "' . - $this->quote_string(urldecode($row['formula_source'])) . - '" WHERE formula_id = ' . $row['formula_id'] - ); - } - } - - public function down() - { - // do nothing - } -} diff --git a/db/migrations/wp_testing/20141122130034_WpTesting_Migration_DecodeFormulasSource.php b/db/migrations/wp_testing/20141122130034_WpTesting_Migration_DecodeFormulasSource.php new file mode 100644 index 00000000..33baefe4 --- /dev/null +++ b/db/migrations/wp_testing/20141122130034_WpTesting_Migration_DecodeFormulasSource.php @@ -0,0 +1,22 @@ +selectAll('SELECT * FROM ' . $this->pluginPrefix . 'formulas'); + foreach ($rows as $row) { + $this->execute( + 'UPDATE ' . $this->pluginPrefix . 'formulas SET formula_source = "' . + $this->quoteString(urldecode($row['formula_source'])) . + '" WHERE formula_id = ' . $row['formula_id'] + ); + } + } + + public function down() + { + // do nothing + } +} diff --git a/db/migrations/wp_testing/20141126191658_SwitchToIndividualAnswers.php b/db/migrations/wp_testing/20141126191658_SwitchToIndividualAnswers.php deleted file mode 100644 index aacca2d9..00000000 --- a/db/migrations/wp_testing/20141126191658_SwitchToIndividualAnswers.php +++ /dev/null @@ -1,244 +0,0 @@ -create_table(WPT_DB_PREFIX . 'answers', array( - 'id' => false, - 'options' => $this->get_table_engine_option(), - )); - $table->column('answer_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - 'primary_key' => true, - 'auto_increment' => true, - )); - $table->column('question_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - $table->column('global_answer_id', 'biginteger', array( - 'unsigned' => true, - )); - $table->column('answer_title', 'text', array( - 'null' => true, - )); - $table->finish(); - - $global_prefix = WP_DB_PREFIX; - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - ALTER TABLE {$plugin_prefix}answers - - ADD CONSTRAINT {$plugin_prefix}fk_answer_question - FOREIGN KEY (question_id) - REFERENCES {$plugin_prefix}questions (question_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_answer_question (question_id), - - ADD CONSTRAINT {$plugin_prefix}fk_answer_global_answer - FOREIGN KEY (global_answer_id) - REFERENCES {$global_prefix}terms (term_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_answer_global_answer (global_answer_id) - "); - - // fill-up wp_t_answers from tests and global answers - $this->execute(" - INSERT INTO {$plugin_prefix}answers - SELECT DISTINCT - NULL AS answer_id, - q.question_id AS question_id, - tt.term_id AS global_answer_id, - '' AS answer_title - FROM {$global_prefix}term_taxonomy AS tt - JOIN {$global_prefix}term_relationships AS tr ON tt.term_taxonomy_id = tr.term_taxonomy_id - AND tt.taxonomy = 'wpt_answer' - JOIN {$global_prefix}posts AS t ON tr.object_id = t.id - JOIN {$plugin_prefix}questions AS q ON q.test_id = t.id - ORDER BY q.question_id, tt.term_id - "); - - // backup wp_t_scores as a future table structure - $this->execute(" - DROP TABLE IF EXISTS {$plugin_prefix}scores_backup; - CREATE TABLE {$plugin_prefix}scores_backup AS - SELECT - a.answer_id AS answer_id, - scale_id AS scale_id, - score_value AS score_value - FROM - {$plugin_prefix}scores AS s, - {$plugin_prefix}answers AS a - WHERE TRUE - AND s.answer_id = a.global_answer_id - AND s.question_id = a.question_id - ; - "); - - // truncate scores - $this->execute("TRUNCATE TABLE {$plugin_prefix}scores"); - - // switch both scores and passing answers to wp_t_answers - $this->execute(" - ALTER TABLE {$plugin_prefix}passing_answers - DROP FOREIGN KEY {$plugin_prefix}fk_passing_answer_question, - DROP FOREIGN KEY {$plugin_prefix}fk_passing_answer_answer - ; - ALTER TABLE {$plugin_prefix}passing_answers - DROP COLUMN question_id, - DROP PRIMARY KEY, - ADD PRIMARY KEY (answer_id, passing_id), - DROP INDEX fk_passing_answer_question, - DROP INDEX fk_passing_answer_answer - ; - ALTER TABLE {$plugin_prefix}passing_answers - ADD CONSTRAINT {$plugin_prefix}fk_passing_answer_answer - FOREIGN KEY (answer_id) - REFERENCES {$plugin_prefix}answers (answer_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_passing_answer_answer (answer_id) - "); - $this->execute(" - ALTER TABLE {$plugin_prefix}scores - DROP FOREIGN KEY {$plugin_prefix}fk_score_question, - DROP FOREIGN KEY {$plugin_prefix}fk_score_answer - ; - ALTER TABLE {$plugin_prefix}scores - DROP COLUMN question_id, - DROP PRIMARY KEY, - ADD PRIMARY KEY (answer_id, scale_id), - DROP INDEX fk_score_question, - DROP INDEX fk_score_answer - ; - ALTER TABLE {$plugin_prefix}scores - ADD CONSTRAINT {$plugin_prefix}fk_score_answer - FOREIGN KEY (answer_id) - REFERENCES {$plugin_prefix}answers (answer_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_score_answer (answer_id) - "); - - // fill-up wp_t_scores from backup - $this->execute(" - INSERT INTO {$plugin_prefix}scores - SELECT * FROM {$plugin_prefix}scores_backup; - DROP TABLE {$plugin_prefix}scores_backup; - "); - } - - public function down() - { - $global_prefix = WP_DB_PREFIX; - $plugin_prefix = WPT_DB_PREFIX; - $questionOptions = array( - 'unsigned' => true, - 'null' => false, - 'after' => 'answer_id' - ); - - // backup wp_t_scores (for global answers) as an old table structure - $this->execute(" - DROP TABLE IF EXISTS {$plugin_prefix}scores_backup; - CREATE TABLE {$plugin_prefix}scores_backup AS - SELECT - a.global_answer_id AS answer_id, - a.question_id, - s.scale_id, - s.score_value - FROM - {$plugin_prefix}scores AS s - JOIN - {$plugin_prefix}answers AS a ON s.answer_id = a.answer_id - AND a.global_answer_id IS NOT NULL - "); - - // backup wp_t_passing_answers (for global answers) as an old table structure - $this->execute(" - DROP TABLE IF EXISTS {$plugin_prefix}passing_answers_backup; - CREATE TABLE {$plugin_prefix}passing_answers_backup AS - SELECT - a.global_answer_id AS answer_id, - a.question_id, - pa.passing_id - FROM - {$plugin_prefix}passing_answers AS pa - JOIN - {$plugin_prefix}answers AS a ON pa.answer_id = a.answer_id - AND a.global_answer_id IS NOT NULL - "); - - // truncate scores and passing_answers - $this->execute("TRUNCATE TABLE {$plugin_prefix}scores"); - $this->execute("TRUNCATE TABLE {$plugin_prefix}passing_answers"); - - // switch both scores and passing answers to global answers - $this->execute("ALTER TABLE {$plugin_prefix}scores DROP FOREIGN KEY {$plugin_prefix}fk_score_answer"); - $this->execute("ALTER TABLE {$plugin_prefix}scores DROP INDEX fk_score_answer"); - $this->add_column("{$plugin_prefix}scores", 'question_id', 'biginteger', $questionOptions); - $this->execute(" - ALTER TABLE {$plugin_prefix}scores - - DROP PRIMARY KEY, - ADD PRIMARY KEY(answer_id, question_id, scale_id), - - ADD CONSTRAINT {$plugin_prefix}fk_score_answer - FOREIGN KEY (answer_id) - REFERENCES {$global_prefix}terms (term_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_score_answer (answer_id), - - ADD CONSTRAINT {$plugin_prefix}fk_score_question - FOREIGN KEY (question_id) - REFERENCES {$plugin_prefix}questions (question_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_score_question (question_id) - "); - - $this->execute("ALTER TABLE {$plugin_prefix}passing_answers DROP FOREIGN KEY {$plugin_prefix}fk_passing_answer_answer"); - $this->execute("ALTER TABLE {$plugin_prefix}passing_answers DROP INDEX fk_passing_answer_answer"); - $this->add_column("{$plugin_prefix}passing_answers", 'question_id', 'biginteger', $questionOptions); - $this->execute(" - ALTER TABLE {$plugin_prefix}passing_answers - - DROP PRIMARY KEY, - ADD PRIMARY KEY(answer_id, question_id, passing_id), - - ADD CONSTRAINT {$plugin_prefix}fk_passing_answer_answer - FOREIGN KEY (answer_id) - REFERENCES {$global_prefix}terms (term_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_passing_answer_answer (answer_id), - - ADD CONSTRAINT {$plugin_prefix}fk_passing_answer_question - FOREIGN KEY (question_id) - REFERENCES {$plugin_prefix}questions (question_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_passing_answer_question (question_id) - "); - - // drop wp_t_answers - $this->execute("DROP TABLE {$plugin_prefix}answers"); - - // fill-up wp_t_scores/wp_t_passing_answers from backups - $this->execute(" - INSERT INTO {$plugin_prefix}scores - SELECT * FROM {$plugin_prefix}scores_backup; - DROP TABLE {$plugin_prefix}scores_backup; - "); - $this->execute(" - INSERT INTO {$plugin_prefix}passing_answers - SELECT * FROM {$plugin_prefix}passing_answers_backup; - DROP TABLE {$plugin_prefix}passing_answers_backup; - "); - } -} diff --git a/db/migrations/wp_testing/20141126191658_WpTesting_Migration_SwitchToIndividualAnswers.php b/db/migrations/wp_testing/20141126191658_WpTesting_Migration_SwitchToIndividualAnswers.php new file mode 100644 index 00000000..80f7ea35 --- /dev/null +++ b/db/migrations/wp_testing/20141126191658_WpTesting_Migration_SwitchToIndividualAnswers.php @@ -0,0 +1,216 @@ +createTable('answers') + ->addPrimaryKey('answer_id') + ->addForeignKey('question_id', array( + 'keyName' => 'fk_answer_question', + 'referencedTable' => "{$this->pluginPrefix}questions", + )) + ->addNullableForeignKey('global_answer_id', array( + 'keyName' => 'fk_answer_global_answer', + 'referencedTable' => "{$this->globalPrefix}terms", + 'referencedKey' => 'term_id', + )) + ->addColumnText('answer_title', array('null' => true)) + ->finish(); + + // fill-up wp_t_answers from tests and global answers + $this->execute(" + INSERT INTO {$this->pluginPrefix}answers + SELECT DISTINCT + NULL AS answer_id, + q.question_id AS question_id, + tt.term_id AS global_answer_id, + '' AS answer_title + FROM {$this->globalPrefix}term_taxonomy AS tt + JOIN {$this->globalPrefix}term_relationships AS tr ON tt.term_taxonomy_id = tr.term_taxonomy_id + AND tt.taxonomy = 'wpt_answer' + JOIN {$this->globalPrefix}posts AS t ON tr.object_id = t.id + JOIN {$this->pluginPrefix}questions AS q ON q.test_id = t.id + ORDER BY q.question_id, tt.term_id + "); + + // backup wp_t_scores as a future table structure + $this->execute(" + DROP TABLE IF EXISTS {$this->pluginPrefix}scores_backup; + CREATE TABLE {$this->pluginPrefix}scores_backup AS + SELECT + a.answer_id AS answer_id, + scale_id AS scale_id, + score_value AS score_value + FROM + {$this->pluginPrefix}scores AS s, + {$this->pluginPrefix}answers AS a + WHERE TRUE + AND s.answer_id = a.global_answer_id + AND s.question_id = a.question_id + ; + "); + + // truncate scores + $this->execute("TRUNCATE TABLE {$this->pluginPrefix}scores"); + + // switch both scores and passing answers to wp_t_answers + $this->execute(" + ALTER TABLE {$this->pluginPrefix}passing_answers + DROP FOREIGN KEY {$this->pluginPrefix}fk_passing_answer_question, + DROP FOREIGN KEY {$this->pluginPrefix}fk_passing_answer_answer + ; + ALTER TABLE {$this->pluginPrefix}passing_answers + DROP COLUMN question_id, + DROP PRIMARY KEY, + ADD PRIMARY KEY (answer_id, passing_id), + DROP INDEX fk_passing_answer_question, + DROP INDEX fk_passing_answer_answer + ; + ALTER TABLE {$this->pluginPrefix}passing_answers + ADD CONSTRAINT {$this->pluginPrefix}fk_passing_answer_answer + FOREIGN KEY (answer_id) + REFERENCES {$this->pluginPrefix}answers (answer_id) + ON DELETE CASCADE + ON UPDATE CASCADE, + ADD INDEX fk_passing_answer_answer (answer_id) + "); + $this->execute(" + ALTER TABLE {$this->pluginPrefix}scores + DROP FOREIGN KEY {$this->pluginPrefix}fk_score_question, + DROP FOREIGN KEY {$this->pluginPrefix}fk_score_answer + ; + ALTER TABLE {$this->pluginPrefix}scores + DROP COLUMN question_id, + DROP PRIMARY KEY, + ADD PRIMARY KEY (answer_id, scale_id), + DROP INDEX fk_score_question, + DROP INDEX fk_score_answer + ; + ALTER TABLE {$this->pluginPrefix}scores + ADD CONSTRAINT {$this->pluginPrefix}fk_score_answer + FOREIGN KEY (answer_id) + REFERENCES {$this->pluginPrefix}answers (answer_id) + ON DELETE CASCADE + ON UPDATE CASCADE, + ADD INDEX fk_score_answer (answer_id) + "); + + // fill-up wp_t_scores from backup + $this->execute(" + INSERT INTO {$this->pluginPrefix}scores + SELECT * FROM {$this->pluginPrefix}scores_backup; + DROP TABLE {$this->pluginPrefix}scores_backup; + "); + } + + public function down() + { + $questionOptions = array( + 'unsigned' => true, + 'null' => false, + 'after' => 'answer_id' + ); + + // backup wp_t_scores (for global answers) as an old table structure + $this->execute(" + DROP TABLE IF EXISTS {$this->pluginPrefix}scores_backup; + CREATE TABLE {$this->pluginPrefix}scores_backup AS + SELECT + a.global_answer_id AS answer_id, + a.question_id, + s.scale_id, + s.score_value + FROM + {$this->pluginPrefix}scores AS s + JOIN + {$this->pluginPrefix}answers AS a ON s.answer_id = a.answer_id + AND a.global_answer_id IS NOT NULL + "); + + // backup wp_t_passing_answers (for global answers) as an old table structure + $this->execute(" + DROP TABLE IF EXISTS {$this->pluginPrefix}passing_answers_backup; + CREATE TABLE {$this->pluginPrefix}passing_answers_backup AS + SELECT + a.global_answer_id AS answer_id, + a.question_id, + pa.passing_id + FROM + {$this->pluginPrefix}passing_answers AS pa + JOIN + {$this->pluginPrefix}answers AS a ON pa.answer_id = a.answer_id + AND a.global_answer_id IS NOT NULL + "); + + // truncate scores and passing_answers + $this->execute("TRUNCATE TABLE {$this->pluginPrefix}scores"); + $this->execute("TRUNCATE TABLE {$this->pluginPrefix}passing_answers"); + + // switch both scores and passing answers to global answers + $this->execute("ALTER TABLE {$this->pluginPrefix}scores DROP FOREIGN KEY {$this->pluginPrefix}fk_score_answer"); + $this->execute("ALTER TABLE {$this->pluginPrefix}scores DROP INDEX fk_score_answer"); + $this->addColumn("{$this->pluginPrefix}scores", 'question_id', 'biginteger', $questionOptions); + $this->execute(" + ALTER TABLE {$this->pluginPrefix}scores + + DROP PRIMARY KEY, + ADD PRIMARY KEY(answer_id, question_id, scale_id), + + ADD CONSTRAINT {$this->pluginPrefix}fk_score_answer + FOREIGN KEY (answer_id) + REFERENCES {$this->globalPrefix}terms (term_id) + ON DELETE CASCADE + ON UPDATE CASCADE, + ADD INDEX fk_score_answer (answer_id), + + ADD CONSTRAINT {$this->pluginPrefix}fk_score_question + FOREIGN KEY (question_id) + REFERENCES {$this->pluginPrefix}questions (question_id) + ON DELETE CASCADE + ON UPDATE CASCADE, + ADD INDEX fk_score_question (question_id) + "); + + $this->execute("ALTER TABLE {$this->pluginPrefix}passing_answers DROP FOREIGN KEY {$this->pluginPrefix}fk_passing_answer_answer"); + $this->execute("ALTER TABLE {$this->pluginPrefix}passing_answers DROP INDEX fk_passing_answer_answer"); + $this->addColumn("{$this->pluginPrefix}passing_answers", 'question_id', 'biginteger', $questionOptions); + $this->execute(" + ALTER TABLE {$this->pluginPrefix}passing_answers + + DROP PRIMARY KEY, + ADD PRIMARY KEY(answer_id, question_id, passing_id), + + ADD CONSTRAINT {$this->pluginPrefix}fk_passing_answer_answer + FOREIGN KEY (answer_id) + REFERENCES {$this->globalPrefix}terms (term_id) + ON DELETE CASCADE + ON UPDATE CASCADE, + ADD INDEX fk_passing_answer_answer (answer_id), + + ADD CONSTRAINT {$this->pluginPrefix}fk_passing_answer_question + FOREIGN KEY (question_id) + REFERENCES {$this->pluginPrefix}questions (question_id) + ON DELETE CASCADE + ON UPDATE CASCADE, + ADD INDEX fk_passing_answer_question (question_id) + "); + + // drop wp_t_answers + $this->execute("DROP TABLE {$this->pluginPrefix}answers"); + + // fill-up wp_t_scores/wp_t_passing_answers from backups + $this->execute(" + INSERT INTO {$this->pluginPrefix}scores + SELECT * FROM {$this->pluginPrefix}scores_backup; + DROP TABLE {$this->pluginPrefix}scores_backup; + "); + $this->execute(" + INSERT INTO {$this->pluginPrefix}passing_answers + SELECT * FROM {$this->pluginPrefix}passing_answers_backup; + DROP TABLE {$this->pluginPrefix}passing_answers_backup; + "); + } +} diff --git a/db/migrations/wp_testing/20150117155757_AddPassingDetails.php b/db/migrations/wp_testing/20150117155757_AddPassingDetails.php deleted file mode 100644 index e39d303f..00000000 --- a/db/migrations/wp_testing/20150117155757_AddPassingDetails.php +++ /dev/null @@ -1,16 +0,0 @@ -add_column(WPT_DB_PREFIX . 'passings', 'ip', 'string', array('limit' => 45)); - $this->add_column(WPT_DB_PREFIX . 'passings', 'device_uuid', 'uuid'); - } - - public function down() - { - $this->remove_column(WPT_DB_PREFIX . 'passings', 'ip'); - $this->remove_column(WPT_DB_PREFIX . 'passings', 'device_uuid'); - } -} diff --git a/db/migrations/wp_testing/20150117155757_WpTesting_Migration_AddPassingDetails.php b/db/migrations/wp_testing/20150117155757_WpTesting_Migration_AddPassingDetails.php new file mode 100644 index 00000000..2b3a1ade --- /dev/null +++ b/db/migrations/wp_testing/20150117155757_WpTesting_Migration_AddPassingDetails.php @@ -0,0 +1,19 @@ + 'passings', + 'column' => 'ip', + 'type' => 'string', + 'options' => array('limit' => 45), + ), + array( + 'table' => 'passings', + 'column' => 'device_uuid', + 'type' => 'uuid', + ), + ); +} diff --git a/db/migrations/wp_testing/20150120194216_AddResultPageOptions.php b/db/migrations/wp_testing/20150120194216_AddResultPageOptions.php deleted file mode 100644 index 4ac1cc26..00000000 --- a/db/migrations/wp_testing/20150120194216_AddResultPageOptions.php +++ /dev/null @@ -1,18 +0,0 @@ -add_meta('wpt_result_page_show_scales', 1); - $this->add_meta('wpt_result_page_show_test_description', 1); - } - - public function down() - { - $this->remove_meta('wpt_result_page_show_scales'); - $this->remove_meta('wpt_result_page_show_test_description'); - } - -} diff --git a/db/migrations/wp_testing/20150120194216_WpTesting_Migration_AddResultPageOptions.php b/db/migrations/wp_testing/20150120194216_WpTesting_Migration_AddResultPageOptions.php new file mode 100644 index 00000000..247f2ffa --- /dev/null +++ b/db/migrations/wp_testing/20150120194216_WpTesting_Migration_AddResultPageOptions.php @@ -0,0 +1,10 @@ + 1, + 'wpt_result_page_show_test_description' => 1, + ); +} diff --git a/db/migrations/wp_testing/20150131233053_AddUserAgentToPassing.php b/db/migrations/wp_testing/20150131233053_AddUserAgentToPassing.php deleted file mode 100644 index 17eb2c7b..00000000 --- a/db/migrations/wp_testing/20150131233053_AddUserAgentToPassing.php +++ /dev/null @@ -1,14 +0,0 @@ -add_column(WPT_DB_PREFIX . 'passings', 'user_agent', 'text'); - } - - public function down() - { - $this->remove_column(WPT_DB_PREFIX . 'passings', 'user_agent'); - } -} diff --git a/db/migrations/wp_testing/20150131233053_WpTesting_Migration_AddUserAgentToPassing.php b/db/migrations/wp_testing/20150131233053_WpTesting_Migration_AddUserAgentToPassing.php new file mode 100644 index 00000000..de4bb4b8 --- /dev/null +++ b/db/migrations/wp_testing/20150131233053_WpTesting_Migration_AddUserAgentToPassing.php @@ -0,0 +1,13 @@ + 'passings', + 'column' => 'user_agent', + 'type' => 'text', + ), + ); +} diff --git a/db/migrations/wp_testing/20150201011503_AddTestPageOptions.php b/db/migrations/wp_testing/20150201011503_AddTestPageOptions.php deleted file mode 100644 index 74bb89f2..00000000 --- a/db/migrations/wp_testing/20150201011503_AddTestPageOptions.php +++ /dev/null @@ -1,18 +0,0 @@ -add_meta('wpt_test_page_submit_button_caption', ''); - $this->add_meta('wpt_test_page_reset_answers_on_back', 0); - } - - public function down() - { - $this->remove_meta('wpt_test_page_submit_button_caption'); - $this->remove_meta('wpt_test_page_reset_answers_on_back'); - } - -} diff --git a/db/migrations/wp_testing/20150201011503_WpTesting_Migration_AddTestPageOptions.php b/db/migrations/wp_testing/20150201011503_WpTesting_Migration_AddTestPageOptions.php new file mode 100644 index 00000000..6dec4891 --- /dev/null +++ b/db/migrations/wp_testing/20150201011503_WpTesting_Migration_AddTestPageOptions.php @@ -0,0 +1,10 @@ + '', + 'wpt_test_page_reset_answers_on_back' => 0, + ); +} diff --git a/db/migrations/wp_testing/20150215143537_AddSortToAnswers.php b/db/migrations/wp_testing/20150215143537_AddSortToAnswers.php deleted file mode 100644 index e4c5d3a5..00000000 --- a/db/migrations/wp_testing/20150215143537_AddSortToAnswers.php +++ /dev/null @@ -1,14 +0,0 @@ -add_column(WPT_DB_PREFIX . 'answers', 'answer_sort', 'integer', array('default' => 100)); - } - - public function down() - { - $this->remove_column(WPT_DB_PREFIX . 'answers', 'answer_sort'); - } -} diff --git a/db/migrations/wp_testing/20150215143537_WpTesting_Migration_AddSortToAnswers.php b/db/migrations/wp_testing/20150215143537_WpTesting_Migration_AddSortToAnswers.php new file mode 100644 index 00000000..97e2bf82 --- /dev/null +++ b/db/migrations/wp_testing/20150215143537_WpTesting_Migration_AddSortToAnswers.php @@ -0,0 +1,14 @@ + 'answers', + 'column' => 'answer_sort', + 'type' => 'integer', + 'options' => array('default' => 100) + ), + ); +} diff --git a/db/migrations/wp_testing/20150215150706_AddScalesSortOption.php b/db/migrations/wp_testing/20150215150706_AddScalesSortOption.php deleted file mode 100644 index ad50d6dc..00000000 --- a/db/migrations/wp_testing/20150215150706_AddScalesSortOption.php +++ /dev/null @@ -1,16 +0,0 @@ -add_meta('wpt_result_page_sort_scales_by_score', 0); - } - - public function down() - { - $this->remove_meta('wpt_result_page_sort_scales_by_score'); - } - -} diff --git a/db/migrations/wp_testing/20150215150706_WpTesting_Migration_AddScalesSortOption.php b/db/migrations/wp_testing/20150215150706_WpTesting_Migration_AddScalesSortOption.php new file mode 100644 index 00000000..430c64ff --- /dev/null +++ b/db/migrations/wp_testing/20150215150706_WpTesting_Migration_AddScalesSortOption.php @@ -0,0 +1,7 @@ + 0); +} diff --git a/db/migrations/wp_testing/20150216181127_AddProgressMeterOption.php b/db/migrations/wp_testing/20150216181127_AddProgressMeterOption.php deleted file mode 100644 index d5e428af..00000000 --- a/db/migrations/wp_testing/20150216181127_AddProgressMeterOption.php +++ /dev/null @@ -1,16 +0,0 @@ -add_meta('wpt_test_page_show_progress_meter', 0); - } - - public function down() - { - $this->remove_meta('wpt_test_page_show_progress_meter'); - } - -} diff --git a/db/migrations/wp_testing/20150216181127_WpTesting_Migration_AddProgressMeterOption.php b/db/migrations/wp_testing/20150216181127_WpTesting_Migration_AddProgressMeterOption.php new file mode 100644 index 00000000..619a83aa --- /dev/null +++ b/db/migrations/wp_testing/20150216181127_WpTesting_Migration_AddProgressMeterOption.php @@ -0,0 +1,7 @@ + 0); +} diff --git a/db/migrations/wp_testing/20150221150014_AddScalesDiagramOption.php b/db/migrations/wp_testing/20150221150014_AddScalesDiagramOption.php deleted file mode 100644 index 3f59930f..00000000 --- a/db/migrations/wp_testing/20150221150014_AddScalesDiagramOption.php +++ /dev/null @@ -1,16 +0,0 @@ -add_meta('wpt_result_page_show_scales_diagram', 0); - } - - public function down() - { - $this->remove_meta('wpt_result_page_show_scales_diagram'); - } - -} diff --git a/db/migrations/wp_testing/20150221150014_WpTesting_Migration_AddScalesDiagramOption.php b/db/migrations/wp_testing/20150221150014_WpTesting_Migration_AddScalesDiagramOption.php new file mode 100644 index 00000000..5a4830c5 --- /dev/null +++ b/db/migrations/wp_testing/20150221150014_WpTesting_Migration_AddScalesDiagramOption.php @@ -0,0 +1,7 @@ + 0); +} diff --git a/db/migrations/wp_testing/20150228141341_AddMultipleAnswersOption.php b/db/migrations/wp_testing/20150228141341_AddMultipleAnswersOption.php deleted file mode 100644 index 923b5f67..00000000 --- a/db/migrations/wp_testing/20150228141341_AddMultipleAnswersOption.php +++ /dev/null @@ -1,16 +0,0 @@ -add_meta('wpt_test_page_multiple_answers', 0); - } - - public function down() - { - $this->remove_meta('wpt_test_page_multiple_answers'); - } - -} diff --git a/db/migrations/wp_testing/20150228141341_WpTesting_Migration_AddMultipleAnswersOption.php b/db/migrations/wp_testing/20150228141341_WpTesting_Migration_AddMultipleAnswersOption.php new file mode 100644 index 00000000..51268146 --- /dev/null +++ b/db/migrations/wp_testing/20150228141341_WpTesting_Migration_AddMultipleAnswersOption.php @@ -0,0 +1,7 @@ + 0); +} diff --git a/db/migrations/wp_testing/20150308201857_EnableAdvancedOptionsForDefaultTest.php b/db/migrations/wp_testing/20150308201857_EnableAdvancedOptionsForDefaultTest.php deleted file mode 100644 index a11ab560..00000000 --- a/db/migrations/wp_testing/20150308201857_EnableAdvancedOptionsForDefaultTest.php +++ /dev/null @@ -1,20 +0,0 @@ -update_meta_in_example('wpt_result_page_show_test_description', 0); - $this->update_meta_in_example('wpt_test_page_show_progress_meter', 1); - $this->update_meta_in_example('wpt_result_page_show_scales_diagram', 0); - } - - public function down() - { - $this->update_meta_in_example('wpt_result_page_show_test_description', 1); - $this->update_meta_in_example('wpt_test_page_show_progress_meter', 0); - $this->update_meta_in_example('wpt_result_page_show_scales_diagram', 0); - } - -} diff --git a/db/migrations/wp_testing/20150308201857_WpTesting_Migration_EnableAdvancedOptionsForDefaultTest.php b/db/migrations/wp_testing/20150308201857_WpTesting_Migration_EnableAdvancedOptionsForDefaultTest.php new file mode 100644 index 00000000..acee964a --- /dev/null +++ b/db/migrations/wp_testing/20150308201857_WpTesting_Migration_EnableAdvancedOptionsForDefaultTest.php @@ -0,0 +1,32 @@ +updateMetaInExample('wpt_result_page_show_test_description', 0); + $this->updateMetaInExample('wpt_test_page_show_progress_meter', 1); + $this->updateMetaInExample('wpt_result_page_show_scales_diagram', 0); + } + + public function down() + { + $this->updateMetaInExample('wpt_result_page_show_test_description', 1); + $this->updateMetaInExample('wpt_test_page_show_progress_meter', 0); + $this->updateMetaInExample('wpt_result_page_show_scales_diagram', 0); + } + + protected function updateMetaInExample($key, $value) + { + $this->execute(" + UPDATE {$this->globalPrefix}posts AS p, {$this->globalPrefix}postmeta AS m + SET m.meta_value = '$value' + WHERE TRUE + AND m.meta_key = '$key' + AND p.post_type = 'wpt_test' + AND p.post_title = 'Eysenck’s Personality Inventory (EPI) (Extroversion/Introversion)' + AND m.post_id = p.ID + "); + } +} diff --git a/db/migrations/wp_testing/20150320053524_CleanUpExperimentalMigrations.php b/db/migrations/wp_testing/20150320053524_WpTesting_Migration_CleanUpExperimentalMigrations.php similarity index 83% rename from db/migrations/wp_testing/20150320053524_CleanUpExperimentalMigrations.php rename to db/migrations/wp_testing/20150320053524_WpTesting_Migration_CleanUpExperimentalMigrations.php index ba012798..31943f5d 100644 --- a/db/migrations/wp_testing/20150320053524_CleanUpExperimentalMigrations.php +++ b/db/migrations/wp_testing/20150320053524_WpTesting_Migration_CleanUpExperimentalMigrations.php @@ -1,6 +1,6 @@ drop_table(WPT_DB_PREFIX . 'sections'); - $table = $this->create_table(WPT_DB_PREFIX . 'sections', array( - 'id' => false, - 'options' => $this->get_table_engine_option(), - )); - $table->column('section_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - 'primary_key' => true, - 'auto_increment' => true, - )); - $table->column('test_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - $table->column('question_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - $table->column('section_title', 'text', array( - 'null' => false, - )); - $table->finish(); - - $global_prefix = WP_DB_PREFIX; - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - ALTER TABLE {$plugin_prefix}sections - - ADD CONSTRAINT {$plugin_prefix}fk_section_test - FOREIGN KEY (test_id) - REFERENCES {$global_prefix}posts (ID) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_section_test (test_id), - - ADD CONSTRAINT {$plugin_prefix}fk_section_question - FOREIGN KEY (question_id) - REFERENCES {$plugin_prefix}questions (question_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_section_question (question_id), - - ADD UNIQUE INDEX uq_section_test_question (test_id, question_id) - "); - } - - public function down() - { - $this->drop_table(WPT_DB_PREFIX . 'sections'); - } -} diff --git a/db/migrations/wp_testing/20150324041508_WpTesting_Migration_AddSectionsTable.php b/db/migrations/wp_testing/20150324041508_WpTesting_Migration_AddSectionsTable.php new file mode 100644 index 00000000..5dbac77a --- /dev/null +++ b/db/migrations/wp_testing/20150324041508_WpTesting_Migration_AddSectionsTable.php @@ -0,0 +1,23 @@ +addForeignKeyToTest($table); + $table + ->addForeignKey('question_id', array( + 'keyName' => 'fk_section_question', + 'referencedTable' => "{$this->pluginPrefix}questions", + 'referencedKey' => 'question_id', + )) + ->addColumnText('section_title') + ->addIndexUnique('uq_section_test_question', array( + 'test_id', + 'question_id' + )); + } +} diff --git a/db/migrations/wp_testing/20150426194928_AddFieldsTables.php b/db/migrations/wp_testing/20150426194928_AddFieldsTables.php deleted file mode 100644 index 04c910bd..00000000 --- a/db/migrations/wp_testing/20150426194928_AddFieldsTables.php +++ /dev/null @@ -1,111 +0,0 @@ -drop_table(WPT_DB_PREFIX . 'field_values'); - $this->drop_table(WPT_DB_PREFIX . 'fields'); - - // Fields - $table = $this->create_table(WPT_DB_PREFIX . 'fields', array( - 'id' => false, - 'options' => $this->get_table_engine_option(), - )); - $table->column('field_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - 'primary_key' => true, - 'auto_increment' => true, - )); - $table->column('test_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - $table->column('field_title', 'text', array( - 'null' => false, - )); - $table->column('field_type', 'string', array( - 'null' => false, - )); - $table->column('field_is_required', 'boolean', array( - 'null' => false, - 'default' => 1, - )); - $table->column('field_sort', 'integer', array( - 'null' => false, - 'default' => 100, - )); - $table->column('field_clarification', 'text'); - $table->column('field_list_values', 'text'); - $table->column('field_default_value', 'text'); - $table->finish(); - - $global_prefix = WP_DB_PREFIX; - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - ALTER TABLE {$plugin_prefix}fields - - ADD CONSTRAINT {$plugin_prefix}fk_field_test - FOREIGN KEY (test_id) - REFERENCES {$global_prefix}posts (ID) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_field_test (test_id) - "); - - // Fields values - $table = $this->create_table(WPT_DB_PREFIX . 'field_values', array( - 'id' => false, - 'options' => $this->get_table_engine_option(), - )); - $table->column('field_value_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - 'primary_key' => true, - 'auto_increment' => true, - )); - $table->column('field_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - $table->column('passing_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - $table->column('field_value', 'text'); - $table->finish(); - - $this->execute(" - ALTER TABLE {$plugin_prefix}field_values - - ADD CONSTRAINT {$plugin_prefix}fk_field_value_field - FOREIGN KEY (field_id) - REFERENCES {$plugin_prefix}fields (field_id) - ON DELETE RESTRICT - ON UPDATE CASCADE, - ADD INDEX fk_field_value_field (field_id), - - ADD CONSTRAINT {$plugin_prefix}fk_field_value_passing - FOREIGN KEY (passing_id) - REFERENCES {$plugin_prefix}passings (passing_id) - ON DELETE CASCADE - ON UPDATE CASCADE, - ADD INDEX fk_field_value_passing (passing_id) - "); - } - - public function down() - { - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - SET FOREIGN_KEY_CHECKS = 0; - TRUNCATE TABLE {$plugin_prefix}field_values; - TRUNCATE TABLE {$plugin_prefix}fields; - SET FOREIGN_KEY_CHECKS = 1; - "); - $this->drop_table($plugin_prefix . 'field_values'); - $this->drop_table($plugin_prefix . 'fields'); - } -} diff --git a/db/migrations/wp_testing/20150426194928_WpTesting_Migration_AddFieldsTables.php b/db/migrations/wp_testing/20150426194928_WpTesting_Migration_AddFieldsTables.php new file mode 100644 index 00000000..fa7e6a4e --- /dev/null +++ b/db/migrations/wp_testing/20150426194928_WpTesting_Migration_AddFieldsTables.php @@ -0,0 +1,54 @@ + true); + + // Fields + $this->createTable('fields') + ->addPrimaryKey('field_id') + ->addForeignKey('test_id', array( + 'keyName' => 'fk_field_test', + 'referencedTable' => "{$this->globalPrefix}posts", + 'referencedKey' => 'ID', + )) + ->addColumnText('field_title') + ->addColumnString('field_type') + ->addColumnBoolean('field_is_required', array('default' => 1)) + ->addColumnInteger('field_sort', array('default' => 100)) + ->addColumnText('field_clarification', $nullable) + ->addColumnText('field_list_values', $nullable) + ->addColumnText('field_default_value', $nullable) + ->finish(); + + // Fields values + $this->createTable('field_values') + ->addPrimaryKey('field_value_id') + ->addForeignKey('field_id', array( + 'keyName' => 'fk_field_value_field', + 'referencedTable' => "{$this->pluginPrefix}fields", + 'onDelete' => 'RESTRICT' + )) + ->addForeignKey('passing_id', array( + 'keyName' => 'fk_field_value_passing', + 'referencedTable' => "{$this->pluginPrefix}passings" + )) + ->addColumnText('field_value', $nullable) + ->finish(); + } + + public function down() + { + $this->execute(" + SET FOREIGN_KEY_CHECKS = 0; + TRUNCATE TABLE {$this->pluginPrefix}field_values; + TRUNCATE TABLE {$this->pluginPrefix}fields; + SET FOREIGN_KEY_CHECKS = 1; + "); + $this->dropTable('field_values'); + $this->dropTable('fields'); + } +} diff --git a/db/migrations/wp_testing/20150510175539_AddLinkInDemoTest.php b/db/migrations/wp_testing/20150510175539_WpTesting_Migration_AddLinkInDemoTest.php similarity index 86% rename from db/migrations/wp_testing/20150510175539_AddLinkInDemoTest.php rename to db/migrations/wp_testing/20150510175539_WpTesting_Migration_AddLinkInDemoTest.php index d5430432..d281bb15 100644 --- a/db/migrations/wp_testing/20150510175539_AddLinkInDemoTest.php +++ b/db/migrations/wp_testing/20150510175539_WpTesting_Migration_AddLinkInDemoTest.php @@ -1,11 +1,11 @@ globalPrefix . 'posts'; $this->execute(" UPDATE $posts SET post_content = CONCAT(post_content, '\\n\\n

This test is a demonstration of psychological tests plugin.

') @@ -17,7 +17,7 @@ public function up() public function down() { - $posts = WP_DB_PREFIX . 'posts'; + $posts = $this->globalPrefix . 'posts'; $this->execute(" UPDATE $posts SET post_content = TRIM(REPLACE(post_content, '

This test is a demonstration of psychological tests plugin.

', '')) diff --git a/db/migrations/wp_testing/20150530145555_RenamePassingColumnsInWpStyle.php b/db/migrations/wp_testing/20150530145555_RenamePassingColumnsInWpStyle.php deleted file mode 100644 index ca62036b..00000000 --- a/db/migrations/wp_testing/20150530145555_RenamePassingColumnsInWpStyle.php +++ /dev/null @@ -1,29 +0,0 @@ -rename_columns('', 'passing_'); - } - - public function down() - { - $this->rename_columns('passing_', ''); - } - - private function rename_columns($old_prefix, $new_prefix) - { - $columns = array( - 'created', - 'modified', - 'ip', - 'device_uuid', - 'user_agent', - ); - - foreach ($columns as $column) { - $this->rename_column(WPT_DB_PREFIX . 'passings', $old_prefix . $column, $new_prefix . $column); - } - } -} diff --git a/db/migrations/wp_testing/20150530145555_WpTesting_Migration_RenamePassingColumnsInWpStyle.php b/db/migrations/wp_testing/20150530145555_WpTesting_Migration_RenamePassingColumnsInWpStyle.php new file mode 100644 index 00000000..76ec7194 --- /dev/null +++ b/db/migrations/wp_testing/20150530145555_WpTesting_Migration_RenamePassingColumnsInWpStyle.php @@ -0,0 +1,29 @@ +renameColumns('', 'passing_'); + } + + public function down() + { + $this->renameColumns('passing_', ''); + } + + private function renameColumns($oldPrefix, $newPrefix) + { + $columns = array( + 'created', + 'modified', + 'ip', + 'device_uuid', + 'user_agent', + ); + + foreach ($columns as $column) { + $this->renameColumn($this->pluginPrefix . 'passings', $oldPrefix . $column, $newPrefix . $column); + } + } +} diff --git a/db/migrations/wp_testing/20150530160000_AddStatusToPassings.php b/db/migrations/wp_testing/20150530160000_AddStatusToPassings.php deleted file mode 100644 index 0c7a5e4e..00000000 --- a/db/migrations/wp_testing/20150530160000_AddStatusToPassings.php +++ /dev/null @@ -1,31 +0,0 @@ - 'respondent_id', - 'values' => array('publish', 'trash'), - 'default' => 'publish', - 'null' => false, - ); - $this->add_column(WPT_DB_PREFIX . 'passings', 'passing_status', 'enum', $options); - - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - ALTER TABLE {$plugin_prefix}passings - ADD INDEX i_passing_status_created_id (passing_status, passing_created, passing_id) - "); - } - - public function down() - { - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - ALTER TABLE {$plugin_prefix}passings - DROP INDEX i_passing_status_created_id - "); - $this->remove_column(WPT_DB_PREFIX . 'passings', 'passing_status'); - } -} diff --git a/db/migrations/wp_testing/20150530160000_WpTesting_Migration_AddStatusToPassings.php b/db/migrations/wp_testing/20150530160000_WpTesting_Migration_AddStatusToPassings.php new file mode 100644 index 00000000..b84ad439 --- /dev/null +++ b/db/migrations/wp_testing/20150530160000_WpTesting_Migration_AddStatusToPassings.php @@ -0,0 +1,34 @@ + 'passings', + 'column' => 'passing_status', + 'type' => 'enum', + 'options' => array( + 'after' => 'respondent_id', + 'values' => array('publish', 'trash'), + 'default' => 'publish', + 'null' => false, + ) + ), + ); + + private $indexColumns = array('passing_status', 'passing_created', 'passing_id'); + private $indexOptions = array('name' => 'i_passing_status_created_id'); + + public function up() + { + parent::up(); + $this->addIndex('passings', $this->indexColumns, $this->indexOptions); + } + + public function down() + { + $this->removeIndex('passings', $this->indexColumns, $this->indexOptions); + parent::down(); + } +} diff --git a/db/migrations/wp_testing/20150614145310_NullifySectionQuestion.php b/db/migrations/wp_testing/20150614145310_NullifySectionQuestion.php deleted file mode 100644 index 1b3313e8..00000000 --- a/db/migrations/wp_testing/20150614145310_NullifySectionQuestion.php +++ /dev/null @@ -1,20 +0,0 @@ -change_column(WPT_DB_PREFIX . 'sections', 'question_id', 'biginteger', array( - 'unsigned' => true, - 'null' => true, - )); - } - - public function down() - { - $this->change_column(WPT_DB_PREFIX . 'sections', 'question_id', 'biginteger', array( - 'unsigned' => true, - 'null' => false, - )); - } -} diff --git a/db/migrations/wp_testing/20150614145310_WpTesting_Migration_NullifySectionQuestion.php b/db/migrations/wp_testing/20150614145310_WpTesting_Migration_NullifySectionQuestion.php new file mode 100644 index 00000000..bb48490c --- /dev/null +++ b/db/migrations/wp_testing/20150614145310_WpTesting_Migration_NullifySectionQuestion.php @@ -0,0 +1,10 @@ + true); +} diff --git a/db/migrations/wp_testing/20150804182815_AllowSectionQuestionsDuplicates.php b/db/migrations/wp_testing/20150804182815_AllowSectionQuestionsDuplicates.php deleted file mode 100644 index 4c984330..00000000 --- a/db/migrations/wp_testing/20150804182815_AllowSectionQuestionsDuplicates.php +++ /dev/null @@ -1,22 +0,0 @@ -execute(" - ALTER TABLE {$plugin_prefix}sections - DROP INDEX uq_section_test_question - "); - } - - public function down() - { - $plugin_prefix = WPT_DB_PREFIX; - $this->execute(" - ALTER TABLE {$plugin_prefix}sections - ADD UNIQUE INDEX uq_section_test_question (test_id, question_id) - "); - } -} diff --git a/db/migrations/wp_testing/20150804182815_WpTesting_Migration_AllowSectionQuestionsDuplicates.php b/db/migrations/wp_testing/20150804182815_WpTesting_Migration_AllowSectionQuestionsDuplicates.php new file mode 100644 index 00000000..3db161b2 --- /dev/null +++ b/db/migrations/wp_testing/20150804182815_WpTesting_Migration_AllowSectionQuestionsDuplicates.php @@ -0,0 +1,18 @@ + 'uq_section_test_question', 'unique' => true); + + public function up() + { + $this->removeIndex('sections', $this->indexColumns, $this->indexOptions); + } + + public function down() + { + $this->addIndex('sections', $this->indexColumns, $this->indexOptions); + } +} diff --git a/db/migrations/wp_testing/20150806190742_NullifySectionTitle.php b/db/migrations/wp_testing/20150806190742_NullifySectionTitle.php deleted file mode 100644 index a3c03cf6..00000000 --- a/db/migrations/wp_testing/20150806190742_NullifySectionTitle.php +++ /dev/null @@ -1,22 +0,0 @@ -nullify_section_title(true); - } - - public function down() - { - $this->nullify_section_title(false); - } - - private function nullify_section_title($to) - { - $this->change_column(WPT_DB_PREFIX . 'sections', 'section_title', 'text', array( - 'null' => $to - )); - } -} diff --git a/db/migrations/wp_testing/20150806190742_WpTesting_Migration_NullifySectionTitle.php b/db/migrations/wp_testing/20150806190742_WpTesting_Migration_NullifySectionTitle.php new file mode 100644 index 00000000..d623046b --- /dev/null +++ b/db/migrations/wp_testing/20150806190742_WpTesting_Migration_NullifySectionTitle.php @@ -0,0 +1,9 @@ +add_column(WPT_DB_PREFIX . 'sections', 'section_description', 'mediumtext'); - } - - public function down() - { - $this->remove_column(WPT_DB_PREFIX . 'sections', 'section_description'); - } -} diff --git a/db/migrations/wp_testing/20150807044411_WpTesting_Migration_AddSectionDescription.php b/db/migrations/wp_testing/20150807044411_WpTesting_Migration_AddSectionDescription.php new file mode 100644 index 00000000..bed5b9c8 --- /dev/null +++ b/db/migrations/wp_testing/20150807044411_WpTesting_Migration_AddSectionDescription.php @@ -0,0 +1,13 @@ + 'sections', + 'column' => 'section_description', + 'type' => 'mediumtext', + ), + ); +} diff --git a/db/migrations/wp_testing/20150808133733_DecimalizeScores.php b/db/migrations/wp_testing/20150808133733_WpTesting_Migration_DecimalizeScores.php similarity index 52% rename from db/migrations/wp_testing/20150808133733_DecimalizeScores.php rename to db/migrations/wp_testing/20150808133733_WpTesting_Migration_DecimalizeScores.php index c62010a8..1e4a5c39 100644 --- a/db/migrations/wp_testing/20150808133733_DecimalizeScores.php +++ b/db/migrations/wp_testing/20150808133733_WpTesting_Migration_DecimalizeScores.php @@ -1,11 +1,11 @@ change_column(WPT_DB_PREFIX . 'scores', 'score_value', 'decimal', array( + $this->changeColumn($this->pluginPrefix . 'scores', 'score_value', 'decimal', array( 'precision' => 6, 'scale' => 3, 'null' => false, @@ -15,7 +15,7 @@ public function up() public function down() { - $this->change_column(WPT_DB_PREFIX . 'scores', 'score_value', 'tinyinteger', array( + $this->changeColumn($this->pluginPrefix . 'scores', 'score_value', 'tinyinteger', array( 'null' => false, 'default' => 0, )); diff --git a/db/migrations/wp_testing/Base/AddColumn.php b/db/migrations/wp_testing/Base/AddColumn.php new file mode 100644 index 00000000..3e98cec3 --- /dev/null +++ b/db/migrations/wp_testing/Base/AddColumn.php @@ -0,0 +1,26 @@ + .., column => .., type => .., options => ..]] + * @var array + */ + protected $columns = array(); + + public function up() + { + foreach ($this->columns as $column) { + $column += array('options' => array()); + $this->addColumn($this->pluginPrefix . $column['table'], $column['column'], $column['type'], $column['options']); + } + } + + public function down() + { + foreach ($this->columns as $column) { + $this->removeColumn($this->pluginPrefix . $column['table'], $column['column']); + } + } +} diff --git a/db/migrations/wp_testing/Base/AddMeta.php b/db/migrations/wp_testing/Base/AddMeta.php new file mode 100644 index 00000000..7b784f4e --- /dev/null +++ b/db/migrations/wp_testing/Base/AddMeta.php @@ -0,0 +1,42 @@ + default value + * @var array + */ + protected $metas = array(); + + public function up() + { + foreach ($this->metas as $key => $value) { + $this->addMeta($key, $value); + } + } + + public function down() + { + foreach (array_keys($this->metas) as $key) { + $this->removeMeta($key); + } + } + + protected function addMeta($key, $value) + { + $this->execute(" + INSERT INTO {$this->globalPrefix}postmeta(post_id, meta_key, meta_value) + SELECT ID, '$key', '$value' + FROM {$this->globalPrefix}posts WHERE post_type = 'wpt_test' + "); + } + + protected function removeMeta($key) + { + $this->execute(" + DELETE FROM {$this->globalPrefix}postmeta + WHERE meta_key = '$key' + "); + } +} diff --git a/db/migrations/wp_testing/Base/AddSingleTable.php b/db/migrations/wp_testing/Base/AddSingleTable.php new file mode 100644 index 00000000..3874ed41 --- /dev/null +++ b/db/migrations/wp_testing/Base/AddSingleTable.php @@ -0,0 +1,38 @@ +createTable($this->entity . 's')->addPrimaryKey($this->entity . '_id'); + $this->setUpTable($table); + $table->finish(); + } + + public function down() + { + $this->dropTable($this->entity . 's'); + } + + /** + * @param WpTesting_Migration_TableDefinition $table + * @return void + */ + protected function addForeignKeyToTest($table) + { + $table->addForeignKey('test_id', array( + 'keyName' => "fk_{$this->entity}_test", + 'referencedTable' => "{$this->globalPrefix}posts", + 'referencedKey' => 'ID', + )); + } + + /** + * @param WpTesting_Migration_TableDefinition $table + * @return void + */ + abstract protected function setUpTable($table); +} diff --git a/db/migrations/wp_testing/Base/Base.php b/db/migrations/wp_testing/Base/Base.php new file mode 100644 index 00000000..04d3a3a2 --- /dev/null +++ b/db/migrations/wp_testing/Base/Base.php @@ -0,0 +1,47 @@ +adaptee = new Ruckusing_Migration_Base($dbAdapter); + $this->setUp(); + } + + /** + * @return void + */ + protected function setUp() + { + $this->globalPrefix = WP_DB_PREFIX; + $this->pluginPrefix = WPT_DB_PREFIX; + } + + /** + * @return void + */ + abstract public function up(); + + /** + * @return void + */ + abstract public function down(); + + public function execute($query) + { + return $this->adaptee->execute($query); + } +} diff --git a/db/migrations/wp_testing/Base/MigrateColumn.php b/db/migrations/wp_testing/Base/MigrateColumn.php new file mode 100644 index 00000000..a9710916 --- /dev/null +++ b/db/migrations/wp_testing/Base/MigrateColumn.php @@ -0,0 +1,92 @@ +adaptee->rename_column($tableName, $columnName, $newColumnName); + } + + /** + * Add a column + * + * @param string $tableName the name of the table + * @param string $columnName the column name + * @param string $type the column type + * @param array|string $options + * + * @return boolean + */ + protected function addColumn($tableName, $columnName, $type, $options = array()) + { + return $this->adaptee->add_column($tableName, $columnName, $type, $options); + } + + /** + * Remove a column + * + * @param string $tableName the name of the table + * @param string $columnName the column name + * + * @return boolean + */ + protected function removeColumn($tableName, $columnName) + { + return $this->adaptee->remove_column($tableName, $columnName); + } + + /** + * Change a column + * + * @param string $tableName the name of the table + * @param string $columnName the column name + * @param string $type the column type + * @param array|string $options + * + * @return boolean + */ + protected function changeColumn($tableName, $columnName, $type, $options = array()) + { + return $this->adaptee->change_column($tableName, $columnName, $type, $options); + } + + /** + * Add an index + * + * @param string $tableName the name of the table + * @param array|string $columnName the column name(-s) + * @param array|string $options [name, unique] + * + * @return boolean + */ + protected function addIndex($tableName, $columnName, $options = array()) + { + $tableName = $this->pluginPrefix . $tableName; + return $this->adaptee->add_index($tableName, $columnName, $options); + } + + /** + * Remove an index + * + * @param string $tableName the name of the table + * @param array|string $columnName the column name(-s) + * @param array|string $options [name] + * + * @return boolean + */ + protected function removeIndex($tableName, $columnName, $options = array()) + { + $tableName = $this->pluginPrefix . $tableName; + return $this->adaptee->remove_index($tableName, $columnName, $options); + } +} diff --git a/db/migrations/wp_testing/Base/MigrateTable.php b/db/migrations/wp_testing/Base/MigrateTable.php new file mode 100644 index 00000000..3199a452 --- /dev/null +++ b/db/migrations/wp_testing/Base/MigrateTable.php @@ -0,0 +1,74 @@ +adaptee->get_adapter(); + if (!($adapter instanceof Ruckusing_Adapter_MySQL_Base)) { + throw new Ruckusing_Exception('Only MySQL adapter allowed'); + } + $tableName = $this->pluginPrefix . $tableName; + $options += array( + 'id' => false, + 'options' => $this->getTableEngineOption(), + 'pluginPrefix' => $this->pluginPrefix, + ); + + return new WpTesting_Migration_TableDefinition($adapter, $tableName, $options); + } + + /** + * Drop a table + * + * @param string $tableName the name of the table + * + * @return boolean + */ + public function dropTable($tableName) + { + return $this->adaptee->drop_table($this->pluginPrefix . $tableName); + } + + /** + * Get default wordpress tables engine + * @return string + */ + private function getTableEngineOption() + { + try { + return 'ENGINE=' . $this->getWpTableEngine(); + } catch (Exception $e) { + $this->adaptee->get_adapter()->logger->log('Engine option is unknown: ' . $e->getMessage()); + } + return ''; + } + + /** + * Get default wordpress tables engine + * + * @throws Ruckusing_Exception + * @return string + */ + private function getWpTableEngine() + { + $status = $this->adaptee->select_one("SHOW TABLE STATUS LIKE '{$this->globalPrefix}posts'"); + + if (empty($status['Engine'])) { + throw new Ruckusing_Exception( + 'Default WP table is missing or it has unknown engine', + Ruckusing_Exception::INVALID_TABLE_DEFINITION + ); + } + + return $status['Engine']; + } +} diff --git a/db/migrations/wp_testing/Base/NullifyColumn.php b/db/migrations/wp_testing/Base/NullifyColumn.php new file mode 100644 index 00000000..2755a110 --- /dev/null +++ b/db/migrations/wp_testing/Base/NullifyColumn.php @@ -0,0 +1,27 @@ +nullifyColumn(true); + } + + public function down() + { + $this->nullifyColumn(false); + } + + private function nullifyColumn($to) + { + $this->changeColumn($this->pluginPrefix . $this->tableName, $this->columnName, $this->columnType, array( + 'null' => $to + ) + $this->columnOptions); + } +} diff --git a/db/migrations/wp_testing/Base/TableDefinition.php b/db/migrations/wp_testing/Base/TableDefinition.php new file mode 100644 index 00000000..3cb9fdfd --- /dev/null +++ b/db/migrations/wp_testing/Base/TableDefinition.php @@ -0,0 +1,173 @@ +dbAdapter = $adapter; + $this->tableName = $name; + $this->pluginPrefix = $options['pluginPrefix']; + } + + public function addPrimaryKey($columnName, $options = array()) + { + return $this->addKey($columnName, $options + array( + 'primary_key' => true, + 'auto_increment' => true, + )); + } + + public function addForeignKey($columnName, $options = array()) + { + $options += array( + 'referencedKey' => $columnName, + 'onDelete' => 'CASCADE', + 'onUpdate' => 'CASCADE', + ); + return $this + ->addKey($columnName, $options) + ->addConstraintForeignKey( + $options['keyName'], $columnName, + $options['referencedTable'], $options['referencedKey'], + $options['onDelete'], $options['onUpdate']) + ->addIndex($options['keyName'], array($columnName)) + ; + } + + private function addKey($columnName, $options = array()) + { + return $this->addColumnIntegerBig($columnName, $options + array( + 'unsigned' => true, + )); + } + + public function addNullableForeignKey($columnName, $options = array()) + { + return $this->addForeignKey($columnName, $options + array( + 'null' => true, + )); + } + + public function addColumnIntegerTiny($columnName, $options = array()) + { + return $this->column($columnName, 'tinyinteger', $options); + } + + public function addColumnInteger($columnName, $options = array()) + { + return $this->column($columnName, 'integer', $options); + } + + public function addColumnIntegerBig($columnName, $options = array()) + { + return $this->column($columnName, 'biginteger', $options); + } + + public function addColumnBoolean($columnName, $options = array()) + { + return $this->column($columnName, 'boolean', $options); + } + + public function addColumnDateTime($columnName, $options = array()) + { + return $this->column($columnName, 'datetime', $options); + } + + public function addColumnString($columnName, $options = array()) + { + return $this->column($columnName, 'string', $options); + } + + public function addColumnText($columnName, $options = array()) + { + return $this->column($columnName, 'text', $options); + } + + private function addConstraintForeignKey($name, $key, $referencedTable, $referencedKey, $onDelete = 'CASCADE', $onUpdate = 'CASCADE') + { + $name = $this->pluginPrefix . $name; + $this->alterTableDefinitions[] = " + ADD CONSTRAINT $name + FOREIGN KEY ($key) + REFERENCES $referencedTable($referencedKey) + ON DELETE $onDelete + ON UPDATE $onUpdate + "; + + return $this; + } + + /** + * @param string $name + * @param array $columns + * @param string $options + * @return self + */ + public function addIndex($name, $columns, $options = '') + { + $columns = implode(', ', $columns); + $this->alterTableDefinitions[] = " + ADD $options INDEX $name($columns) + "; + + return $this; + } + + /** + * @param string $name + * @param array $columns + * @return self + */ + public function addIndexUnique($name, $columns) + { + return $this->addIndex($name, $columns, 'UNIQUE'); + } + + /** + * Create a column + * + * @param string $columnName the column name + * @param string $type the column type + * @param array $options + * + * @return self + */ + public function column($columnName, $type, $options = array()) + { + parent::column($columnName, $type, $options + array( + 'null' => false, + )); + return $this; + } + + /** + * Finish table definition and apply it + * + * @param boolean $wantsSql + * @return self + * + * @throws Ruckusing_Exception + */ + public function finish($wantsSql = false) + { + parent::finish($wantsSql); + + // Apply alter table + if (!empty($this->alterTableDefinitions)) { + $definitions = implode(",\n", $this->alterTableDefinitions); + $this->dbAdapter->execute("ALTER TABLE {$this->tableName} $definitions"); + } + + return $this; + } +} diff --git a/db/migrations/wp_testing/Base/UpdateData.php b/db/migrations/wp_testing/Base/UpdateData.php new file mode 100644 index 00000000..3caee431 --- /dev/null +++ b/db/migrations/wp_testing/Base/UpdateData.php @@ -0,0 +1,45 @@ +adaptee->select_one($sql); + if (empty($result)) { + return null; + } + return reset($result); + } + + /** + * Select all query + * + * @param string $sql the query to run + * + * @return array + */ + protected function selectAll($sql) + { + return $this->adaptee->select_all($sql); + } + + /** + * Quote a string + * + * @param string $str the string to quote + * + * @return string + */ + protected function quoteString($str) + { + return $this->adaptee->quote_string($str); + } +} diff --git a/db/migrations/wp_testing/_BaseMigration.php b/db/migrations/wp_testing/_BaseMigration.php deleted file mode 100644 index 24f61e63..00000000 --- a/db/migrations/wp_testing/_BaseMigration.php +++ /dev/null @@ -1,92 +0,0 @@ -get_wp_table_engine(); - } catch (Exception $e) { - $this->get_adapter()->logger->log('Engine option is unknown: ' . $e->getMessage()); - } - - return ''; - } - - /** - * Get default wordpress tables engine - * - * @throws Ruckusing_Exception - * @return string - */ - protected function get_wp_table_engine() - { - $posts = WP_DB_PREFIX . 'posts'; - $status = $this->select_one("SHOW TABLE STATUS LIKE '$posts'"); - - if (empty($status['Engine'])) { - throw new Ruckusing_Exception( - 'Default WP table is missing or it has unknown engine', - Ruckusing_Exception::INVALID_TABLE_DEFINITION - ); - } - - return $status['Engine']; - } - - /** - * Select first field value - * - * @param string $sql the query to run - * - * @return string - */ - protected function field($sql) - { - $result = $this->select_one($sql); - if (empty($result)) { - return null; - } - return reset($result); - } - - protected function add_meta($key, $value) - { - $meta = WP_DB_PREFIX . 'postmeta'; - $posts = WP_DB_PREFIX . 'posts'; - $this->execute(" - INSERT INTO $meta(post_id, meta_key, meta_value) - SELECT ID, '$key', '$value' - FROM $posts WHERE post_type = 'wpt_test' - "); - } - - protected function remove_meta($key) - { - $meta = WP_DB_PREFIX . 'postmeta'; - $this->execute(" - DELETE FROM $meta - WHERE meta_key = '$key' - "); - } - - protected function update_meta_in_example($key, $value) - { - $meta = WP_DB_PREFIX . 'postmeta'; - $posts = WP_DB_PREFIX . 'posts'; - $this->execute(" - UPDATE $posts AS p, $meta AS m - SET m.meta_value = '$value' - WHERE TRUE - AND m.meta_key = '$key' - AND p.post_type = 'wpt_test' - AND p.post_title = 'Eysenck’s Personality Inventory (EPI) (Extroversion/Introversion)' - AND m.post_id = p.ID - "); - } -} diff --git a/db/ruckusing.conf.php b/db/ruckusing.conf.php index b8f00cd0..6dc7deca 100644 --- a/db/ruckusing.conf.php +++ b/db/ruckusing.conf.php @@ -1,7 +1,8 @@ ='); +if (!$php53) { + require_once dirname(__FILE__) . '/../vendor/autoload_52.php'; +} $local = dirname(__FILE__) . '/ruckusing.conf.local.php'; if (file_exists($local)) { return require_once $local; diff --git a/tools/refactoring/compare-schemas.sh b/tools/refactoring/compare-schemas.sh new file mode 100755 index 00000000..fca708d5 --- /dev/null +++ b/tools/refactoring/compare-schemas.sh @@ -0,0 +1,16 @@ + +set -e + +HERE=`pwd` +cd ../../db + +mysql -e 'drop database if exists wp_testing_4_3_1' +mysql -e 'create database wp_testing_4_3_1 DEFAULT CHARACTER SET utf8' +../vendor/bin/ruckus.php db:migrate + +cd $HERE +mysqldump wp_testing_4_3_1 |\ +sed 's/[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\} *[0-9]\{1,2\}:[0-9]\{2\}:[0-9]\{2\}/xxxx-xx-xx xx:xx:xx/g' |\ +sed 's/[a-f0-9][a-f0-9-]\{34\}[a-f0-9]/xxxxxxxxxxxxxxxx/' > current.sql + +diff master.sql current.sql diff --git a/tools/refactoring/methods2diagram.sh b/tools/refactoring/methods2diagram.sh new file mode 100755 index 00000000..fd4b2436 --- /dev/null +++ b/tools/refactoring/methods2diagram.sh @@ -0,0 +1,31 @@ + +HERE=`pwd` +cd ../../db/migrations/wp_testing + +( +cat << EOF + +digraph Calls { + layout=fdp + overlap=false + splines=polyline + edge [ + color="#6F715C" + arrowhead=open + ] + node [ + style="rounded,filled" + color="#F2CA52" + shape=box + fontname="Ubuntu" + fontsize=10 + ] +EOF + +ack -o '[^$]+>[a-zA-Z_]+\(' | sed -e 's/:/ /g' | awk '{ print $1 " " $3 }' | sort | uniq |\ +# egrep -v '(e->getMessage|get_adapter|this->execute|Base/Base|Base/AddMeta|updateMetaInExample|Base/UpdateData)' |\ +# egrep -v '(DecodeFormulasSource|this->field|Base/MigrateColumn|Column|Base/MigrateTable|Base/TableDefinition)' |\ +sed -e 's/[0-9]*_WpTesting_Migration_//' -e 's/[()]//g' -e 's/.php//' -e 's/this->//' |\ +awk '{ print " \"" $1 "\" [color=\"#C6DCE1\"] \n" " \"" $1 "\" -> \"" $2 "\"" }' +echo "}" +) | dot -Tsvg > $HERE/calls.svg \ No newline at end of file From c8ee2553e560f0c5f9773be5d1704cba2f16e859 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 4 Oct 2015 17:07:29 +0600 Subject: [PATCH 09/22] Deduplicate Facade by extracting getDoer --- src/Facade.php | 80 +++++++++++++++++++------------------------------- 1 file changed, 31 insertions(+), 49 deletions(-) diff --git a/src/Facade.php b/src/Facade.php index 3d279004..8a7a454e 100644 --- a/src/Facade.php +++ b/src/Facade.php @@ -3,25 +3,7 @@ class WpTesting_Facade implements WpTesting_Addon_IFacade, WpTesting_Facade_IORM, WpTesting_Facade_ITestPasser { - /** - * @var WpTesting_Doer_TestEditor - */ - private $testEditor = null; - - /** - * @var WpTesting_Doer_PassingBrowser - */ - private $passingBrowser = null; - - /** - * @var WpTesting_Doer_PostBrowser - */ - private $postBrowser = null; - - /** - * @var WpTesting_Doer_TestPasser - */ - private $testPasser = null; + private $doers = array(); /** * @var WpTesting_Addon_Updater @@ -213,54 +195,54 @@ public function setupTestPasser($template) return $template; } + /** + * @return WpTesting_Doer_TestEditor + */ protected function getTestEditor() { - if (!is_null($this->testEditor)) { - return $this->testEditor; - } - - $this->setupORM(); - $this->testEditor = new WpTesting_Doer_TestEditor($this->wp); - - return $this->testEditor; + return $this->getDoer('TestEditor'); } + /** + * @return WpTesting_Doer_PassingBrowser + */ protected function getPassingBrowser() { - if (!is_null($this->passingBrowser)) { - return $this->passingBrowser; - } - - $this->setupORM(); - $this->passingBrowser = ($this->wp->isCurrentUserCan('activate_plugins')) - ? new WpTesting_Doer_PassingBrowser_Admin($this->wp) - : new WpTesting_Doer_PassingBrowser_User($this->wp); - - return $this->passingBrowser; + $name = ($this->wp->isCurrentUserCan('activate_plugins')) ? 'Admin' : 'User'; + return $this->getDoer('PassingBrowser_' . $name); } + /** + * @return WpTesting_Doer_PostBrowser + */ protected function getPostBrowser() { - if (!is_null($this->postBrowser)) { - return $this->postBrowser; - } - - $this->setupORM(); - $this->postBrowser = new WpTesting_Doer_PostBrowser($this->wp); - - return $this->postBrowser; + return $this->getDoer('PostBrowser'); } + /** + * @return WpTesting_Doer_TestPasser + */ public function getTestPasser() { - if (!is_null($this->testPasser)) { - return $this->testPasser; + return $this->getDoer('TestPasser'); + } + + /** + * @param string $name + * @return WpTesting_Doer_AbstractDoer + */ + private function getDoer($name) + { + if (isset($this->doers[$name])) { + return $this->doers[$name]; } $this->setupORM(); - $this->testPasser = new WpTesting_Doer_TestPasser($this->wp); + $doerClassName = 'WpTesting_Doer_' . $name; + $this->doers[$name] = new $doerClassName($this->wp); - return $this->testPasser; + return $this->doers[$name]; } protected function getAddonUpdater() From 04fe9cfdd28a77254e4ccca44b473ec254cd071c Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 4 Oct 2015 17:16:39 +0600 Subject: [PATCH 10/22] Deduplicate passing table widget by extracting get_test_title_link --- src/Widget/PassingTable.php | 22 ++++++++++++++++++++++ src/Widget/PassingTable/Admin.php | 18 +++++++----------- src/Widget/PassingTable/User.php | 12 ++---------- 3 files changed, 31 insertions(+), 21 deletions(-) diff --git a/src/Widget/PassingTable.php b/src/Widget/PassingTable.php index f2d5e299..60070e91 100644 --- a/src/Widget/PassingTable.php +++ b/src/Widget/PassingTable.php @@ -47,11 +47,33 @@ protected function render_static_column(WpTesting_Model_Passing $item, $column_n switch($column_name) { case 'passing_created': return $item->getCreated()->__toString(); + case 'test_title': + $test = $item->createTest(); + return $this->render_link( + $this->get_test_title_link($test), + $test->getTitle() + ); } return ''; } + protected function get_test_title_link(WpTesting_Model_Test $test) + { + return $this->wp->getPostPermalink($test->getId()); + } + + protected function find_items() + { + return WpTesting_Query_Passing::create() + ->findAllPagedSortedByParams($this->get_find_items_params(), $this->get_pagenum(), $this->records_per_page, $this->get_order_by()); + } + + /** + * @return array + */ + abstract protected function get_find_items_params(); + /** * @return fRecordSet|WpTesting_Model_Test[] */ diff --git a/src/Widget/PassingTable/Admin.php b/src/Widget/PassingTable/Admin.php index 55483110..531d74ae 100644 --- a/src/Widget/PassingTable/Admin.php +++ b/src/Widget/PassingTable/Admin.php @@ -106,13 +106,11 @@ public function prepare_items() return parent::prepare_items(); } - protected function find_items() + protected function get_find_items_params() { $params = $this->get_filter_params($this->find_items_filter_params); $params['passing_status'] = fRequest::get('passing_status', 'array', array('publish')); - - return WpTesting_Query_Passing::create() - ->findAllPagedSortedByParams($params, $this->get_pagenum(), $this->records_per_page, $this->get_order_by()); + return $params; } protected function find_tests() @@ -164,13 +162,6 @@ protected function render_static_column(WpTesting_Model_Passing $item, $column_n case 'passing_user_agent': return $item->getUserAgent(); - case 'test_title': - $test = $item->createTest(); - return $this->render_link( - $this->wp->getEditPostLink($test->getId()), - $test->getTitle() - ); - case 'results': $links = array(); @@ -225,6 +216,11 @@ protected function render_static_column(WpTesting_Model_Passing $item, $column_n return parent::render_static_column($item, $column_name); } + protected function get_test_title_link(WpTesting_Model_Test $test) + { + return $this->wp->getEditPostLink($test->getId()); + } + public function get_views() { $results = WpTesting_Query_Passing::create()->countAllStatuses(); diff --git a/src/Widget/PassingTable/User.php b/src/Widget/PassingTable/User.php index 05b769f6..39e7cdcd 100644 --- a/src/Widget/PassingTable/User.php +++ b/src/Widget/PassingTable/User.php @@ -30,14 +30,13 @@ protected function get_static_columns() ); } - protected function find_items() + protected function get_find_items_params() { $params = $this->get_filter_params(array( 'test_id', )); $params['respondent_id'] = $this->wp->getCurrentUserId(); - return WpTesting_Query_Passing::create() - ->findAllPagedSortedByParams($params, $this->get_pagenum(), $this->records_per_page, $this->get_order_by()); + return $params; } protected function find_tests() @@ -63,13 +62,6 @@ protected function render_static_column(WpTesting_Model_Passing $item, $column_n case 'row_number': return $this->get_row_number(); - case 'test_title': - $test = $item->createTest(); - return $this->render_link( - $this->wp->getPostPermalink($test->getId()), - $test->getTitle() - ); - case 'results': $links = array(); From 35185b41d8cf3033715f1a4c14a3618ef0e34ab6 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 4 Oct 2015 17:44:14 +0600 Subject: [PATCH 11/22] Deduplicate doers by extracting dieMessage --- src/Doer/AbstractDoer.php | 16 ++++++++++++++++ src/Doer/TestPasser.php | 16 ++++------------ src/Doer/TestPasser/GetResults.php | 16 ++++------------ src/Doer/TestPasser/ProcessForm.php | 18 +++++------------- 4 files changed, 29 insertions(+), 37 deletions(-) diff --git a/src/Doer/AbstractDoer.php b/src/Doer/AbstractDoer.php index 608e03be..b31ab786 100644 --- a/src/Doer/AbstractDoer.php +++ b/src/Doer/AbstractDoer.php @@ -199,6 +199,22 @@ protected function render($__template, $__params = array()) return ob_get_clean(); } + protected function dieMessage($template, $responseCode, $parameters) + { + if (!isset($parameters['title'])) { + $parameters['title'] = $this->wp->translate('WordPress › Error'); + } + $this->wp->dieMessage( + $this->render($template, $parameters), + $parameters['title'], + array( + 'back_link' => true, + 'response' => $responseCode, + ) + ); + return $this; + } + protected function isPost() { return fRequest::isPost(); diff --git a/src/Doer/TestPasser.php b/src/Doer/TestPasser.php index 020ddc77..f9ac2038 100644 --- a/src/Doer/TestPasser.php +++ b/src/Doer/TestPasser.php @@ -177,18 +177,10 @@ public function renderTestContent($content) private function dieUnderConctruction() { - $this->wp->dieMessage( - $this->render('Test/Passer/respondent-message', array( - 'title' => __('Test is under construction', 'wp-testing'), - 'content' => __('You can not get any results from it yet.', 'wp-testing'), - )), - __('Test is under construction', 'wp-testing'), - array( - 'back_link' => true, - 'response' => 403, - ) - ); - return $this; + return $this->dieMessage('Test/Passer/respondent-message', 403, array( + 'title' => __('Test is under construction', 'wp-testing'), + 'content' => __('You can not get any results from it yet.', 'wp-testing'), + )); } private function prepareToLevenshein($input) diff --git a/src/Doer/TestPasser/GetResults.php b/src/Doer/TestPasser/GetResults.php index a61ea325..60c47886 100644 --- a/src/Doer/TestPasser/GetResults.php +++ b/src/Doer/TestPasser/GetResults.php @@ -68,18 +68,10 @@ public function renderWithMoreSplitted($content) private function dieNotFound() { - $this->wp->dieMessage( - $this->render('Test/Passer/respondent-message', array( - 'title' => __('Test result not found', 'wp-testing'), - 'content' => __('You can not get anything from nothing.', 'wp-testing'), - )), - __('Test result not found', 'wp-testing'), - array( - 'back_link' => true, - 'response' => 404, - ) - ); - return $this; + return $this->dieMessage('Test/Passer/respondent-message', 404, array( + 'title' => __('Test result not found', 'wp-testing'), + 'content' => __('You can not get anything from nothing.', 'wp-testing'), + )); } private function setupScalesDiagram(WpTesting_Model_Test $test, WpTesting_Model_Passing $passing) diff --git a/src/Doer/TestPasser/ProcessForm.php b/src/Doer/TestPasser/ProcessForm.php index 9766ba4c..87cebd05 100644 --- a/src/Doer/TestPasser/ProcessForm.php +++ b/src/Doer/TestPasser/ProcessForm.php @@ -70,18 +70,10 @@ private function redirectAndDie($link) private function dieNotValid($details) { - $this->wp->dieMessage( - $this->render('Test/Passer/respondent-message', array( - 'title' => __('Test data not valid', 'wp-testing'), - 'content' => __('You passed not valid data to test.', 'wp-testing'), - 'details' => $details, - )), - __('Test data not valid', 'wp-testing'), - array( - 'back_link' => true, - 'response' => 400, - ) - ); - return $this; + return $this->dieMessage('Test/Passer/respondent-message', 400, array( + 'title' => __('Test data not valid', 'wp-testing'), + 'content' => __('You passed not valid data to test.', 'wp-testing'), + 'details' => $details, + )); } } \ No newline at end of file From 2609ac5468b81e8397971dc35f94b6e550284cbc Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 4 Oct 2015 18:56:28 +0600 Subject: [PATCH 12/22] Deduplicate abstract model and test * Abstract model by extracting deAliasColumn * Test by extracting buildRelatedTaxonomies --- src/Model/AbstractModel.php | 19 +++++++++++-------- src/Model/Test.php | 16 ++++++++-------- 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/src/Model/AbstractModel.php b/src/Model/AbstractModel.php index dd43dca4..47128fd9 100644 --- a/src/Model/AbstractModel.php +++ b/src/Model/AbstractModel.php @@ -295,10 +295,7 @@ protected function loadFromResult($result, $ignore_identity_map=false) */ protected function get($column) { - if (isset($this->columnAliases[$column])) { - $column = $this->columnAliases[$column]; - } - return parent::get($column); + return parent::get($this->deAliasColumn($column)); } /** @@ -306,10 +303,16 @@ protected function get($column) */ protected function set($column, $value) { - if (isset($this->columnAliases[$column])) { - $column = $this->columnAliases[$column]; - } - return parent::set($column, $value); + return parent::set($this->deAliasColumn($column), $value); + } + + /** + * @param string $column + * @return string + */ + private function deAliasColumn($column) + { + return (isset($this->columnAliases[$column])) ? $this->columnAliases[$column] : $column; } /** diff --git a/src/Model/Test.php b/src/Model/Test.php index 79ae1a78..446f2eb9 100644 --- a/src/Model/Test.php +++ b/src/Model/Test.php @@ -114,12 +114,7 @@ public function buildQuestionsWithAnswers() */ public function buildScales() { - $ids = $this->getTermIdFromFilteredTaxonomies('wpt_scale'); - return fRecordSet::build('WpTesting_Model_Scale', array( - 'term_id=' => $ids, - ), array( - 'FIELD(term_id, ' . implode(', ', $ids) . ')' => 'asc', - )); + return $this->buildRelatedTaxonomies('wpt_scale', 'WpTesting_Model_Scale'); } /** @@ -236,8 +231,13 @@ public function buildFormulas() */ public function buildGlobalAnswers() { - $ids = $this->getTermIdFromFilteredTaxonomies('wpt_answer'); - return fRecordSet::build('WpTesting_Model_GlobalAnswer', array( + return $this->buildRelatedTaxonomies('wpt_answer', 'WpTesting_Model_GlobalAnswer'); + } + + protected function buildRelatedTaxonomies($taxomony, $model) + { + $ids = $this->getTermIdFromFilteredTaxonomies($taxomony); + return fRecordSet::build($model, array( 'term_id=' => $ids, ), array( 'FIELD(term_id, ' . implode(', ', $ids) . ')' => 'asc', From 3317ed014d9785e0869fc907107da724e8979076 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 4 Oct 2015 20:44:27 +0600 Subject: [PATCH 13/22] Minor improvements in naming and new calls diagram * Fix parameters naming * Prepare diagram for wp facade --- src/Model/AbstractModel.php | 4 ++-- tools/refactoring/methods2diagram2.sh | 29 +++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100755 tools/refactoring/methods2diagram2.sh diff --git a/src/Model/AbstractModel.php b/src/Model/AbstractModel.php index 47128fd9..0f74e167 100644 --- a/src/Model/AbstractModel.php +++ b/src/Model/AbstractModel.php @@ -281,13 +281,13 @@ protected function generateMagicMethodPhpDoc($methodName, $params, $returnType, return " * @method $returnType $methodName($paramsDoc) $commentDoc"; } - protected function loadFromResult($result, $ignore_identity_map=false) + protected function loadFromResult($result, $ignoreIdentityMap=false) { $row = $result->current(); foreach ($row as $key => $value) { $row[$key] = $value; } - return parent::loadFromResult(new ArrayIterator(array($row)), $ignore_identity_map); + return parent::loadFromResult(new ArrayIterator(array($row)), $ignoreIdentityMap); } /** diff --git a/tools/refactoring/methods2diagram2.sh b/tools/refactoring/methods2diagram2.sh new file mode 100755 index 00000000..a5fcc09e --- /dev/null +++ b/tools/refactoring/methods2diagram2.sh @@ -0,0 +1,29 @@ + +HERE=`pwd` +cd ../../src + +( +cat << EOF + +digraph Calls { + layout=fdp + overlap=false + splines=polyline + edge [ + color="#6F715C" + arrowhead=open + ] + node [ + style="rounded,filled" + color="#F2CA52" + shape=box + fontname="Ubuntu" + fontsize=10 + ] +EOF + +ack -o 'wp->[a-zA-Z_]+\(' | sed -e 's/:/ /g' | awk '{ print $1 " " $3 }' | sort | uniq |\ +sed -e 's/[()]//g' -e 's/.php//' |\ +awk '{ print " \"" $1 "\" [color=\"#C6DCE1\"] \n" " \"" $1 "\" -> \"" $2 "\"" }' +echo "}" +) | dot -Tsvg > $HERE/calls.svg \ No newline at end of file From ab4624ce9d10114450e5be22dd4e02ea7d0708cc Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 11 Oct 2015 18:01:19 +0600 Subject: [PATCH 14/22] Rename test passer actions --- src/Doer/TestPasser.php | 10 +++++----- .../{TestPasser/Action.php => TestPasserAction.php} | 2 +- src/Doer/{TestPasser => TestPasserAction}/FillForm.php | 2 +- .../{TestPasser => TestPasserAction}/GetResults.php | 2 +- .../{TestPasser => TestPasserAction}/ProcessForm.php | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) rename src/Doer/{TestPasser/Action.php => TestPasserAction.php} (86%) rename src/Doer/{TestPasser => TestPasserAction}/FillForm.php (98%) rename src/Doer/{TestPasser => TestPasserAction}/GetResults.php (96%) rename src/Doer/{TestPasser => TestPasserAction}/ProcessForm.php (96%) diff --git a/src/Doer/TestPasser.php b/src/Doer/TestPasser.php index f9ac2038..63453b0e 100644 --- a/src/Doer/TestPasser.php +++ b/src/Doer/TestPasser.php @@ -29,7 +29,7 @@ class WpTesting_Doer_TestPasser extends WpTesting_Doer_AbstractDoer private $passing = null; /** - * @var WpTesting_Doer_TestPasser_Action + * @var WpTesting_Doer_TestPasserAction */ private $actionProcessor = null; @@ -217,20 +217,20 @@ private function getTestPassingAction() /** * @param string $action - * @return WpTesting_Doer_TestPasser_Action + * @return WpTesting_Doer_TestPasserAction */ private function createActionProcessor($action) { if (is_null($this->actionProcessor)) { switch ($action) { case self::ACTION_FILL_FORM: - $this->actionProcessor = new WpTesting_Doer_TestPasser_FillForm($this->wp); + $this->actionProcessor = new WpTesting_Doer_TestPasserAction_FillForm($this->wp); break; case self::ACTION_PROCESS_FORM: - $this->actionProcessor = new WpTesting_Doer_TestPasser_ProcessForm($this->wp); + $this->actionProcessor = new WpTesting_Doer_TestPasserAction_ProcessForm($this->wp); break; case self::ACTION_GET_RESULTS: - $this->actionProcessor = new WpTesting_Doer_TestPasser_GetResults($this->wp); + $this->actionProcessor = new WpTesting_Doer_TestPasserAction_GetResults($this->wp); break; } } diff --git a/src/Doer/TestPasser/Action.php b/src/Doer/TestPasserAction.php similarity index 86% rename from src/Doer/TestPasser/Action.php rename to src/Doer/TestPasserAction.php index db1d5230..48d3f520 100644 --- a/src/Doer/TestPasser/Action.php +++ b/src/Doer/TestPasserAction.php @@ -1,6 +1,6 @@ Date: Sun, 11 Oct 2015 20:18:41 +0600 Subject: [PATCH 15/22] Extract filter and direct renderers from TestPasser * Add ExclusiveContentFilterer --- src/Doer/IExclusiveContentFilterer.php | 25 +++++ src/Doer/Shortcoder/TestFirstPage.php | 3 +- src/Doer/TestPasser.php | 132 +------------------------ src/Doer/TestPasser/DirectRenderer.php | 29 ++++++ src/Doer/TestPasser/FilterRenderer.php | 109 ++++++++++++++++++++ src/Facade.php | 4 +- src/Facade/ITestPasser.php | 2 +- 7 files changed, 172 insertions(+), 132 deletions(-) create mode 100644 src/Doer/IExclusiveContentFilterer.php create mode 100644 src/Doer/TestPasser/DirectRenderer.php create mode 100644 src/Doer/TestPasser/FilterRenderer.php diff --git a/src/Doer/IExclusiveContentFilterer.php b/src/Doer/IExclusiveContentFilterer.php new file mode 100644 index 00000000..a89143f0 --- /dev/null +++ b/src/Doer/IExclusiveContentFilterer.php @@ -0,0 +1,25 @@ +getTestPasser()->renderOutside($data['test']); + $directPasser = new WpTesting_Doer_TestPasser_DirectRenderer($this->wp); + $data['content'] = $directPasser->renderOutside($data['test'], $this->getTestPasser()); return $data; } diff --git a/src/Doer/TestPasser.php b/src/Doer/TestPasser.php index 63453b0e..7a991e1c 100644 --- a/src/Doer/TestPasser.php +++ b/src/Doer/TestPasser.php @@ -1,6 +1,6 @@ isPostType('wpt_test')) { - return $this; - } - - try { - $this->beforeRender($this->createTest($this->wp->getQuery()->get_queried_object())); - } catch (UnexpectedValueException $e) { - return $this->dieUnderConctruction(); - } - - $this->wp->addFilter('the_content', array($this, 'renderOnFilter'), 5); - $this->canRenderOnFilter = true; - return $this; - } - /** * @param WpTesting_Model_Test $test * @throws UnexpectedValueException * @return self */ - private function beforeRender(WpTesting_Model_Test $test) + protected function beforeRender(WpTesting_Model_Test $test) { $this->test = $test; $action = $this->getTestPassingAction(); @@ -81,85 +53,18 @@ private function beforeRender(WpTesting_Model_Test $test) return $this; } - /** - * @param WpTesting_Model_Test $test - * @return string - */ - public function renderOutside(WpTesting_Model_Test $test) - { - try { - $this->beforeRender($test); - } catch (UnexpectedValueException $e) { - return __('Test is under construction', 'wp-testing'); - } - - $hasFilter = ($this->canRenderOnFilter === true); - if ($hasFilter) { - $this->canRenderOnFilter = false; - } - - $content = $this->wp->applyFilters('the_content', $test->getContent()); - if ($hasFilter) { - $this->canRenderOnFilter = true; - } - $content = $this->renderTestContent($content); - - return $content; - } - public function addPassingActionCssClass($classes) { $classes[] = 'wpt_test-' . $this->getTestPassingAction(); return $classes; } - /** - * @param string $content - * @return string - */ - public function renderOnFilter($content) - { - if ($this->canRenderOnFilter !== true) { - return $content; - } - - // Protection for calling the_content filter not on current test content - $testContent = $this->test->getContent(); - $isSimilar = empty($testContent) || 50 > levenshtein( - $this->prepareToLevenshein($testContent), - $this->prepareToLevenshein($content) - ); - if (!$isSimilar) { - return $content; - } - - // Protection for many times calling the_content filter - if (!is_null($this->filteredTestContent)) { - return $this->filteredTestContent; - } - - $this->filteredTestContent = $renderedContent = $this->renderTestContent($content); - - // Not cache for content, that is cleared of shortcodes - $isShortcodesCleared = ($this->hasShortcodes($testContent) && !$this->hasShortcodes($content)); - if ($isShortcodesCleared) { - $this->filteredTestContent = null; - } - - return $renderedContent; - } - /** * @param string $content * @return string */ public function renderTestContent($content) { - $hasFilter = ($this->canRenderOnFilter === true); - if ($hasFilter) { - $this->canRenderOnFilter = false; - } - $action = $this->getTestPassingAction(); $template = $this->wp->locateTemplate('entry-content-wpt-test-' . $action . '.php'); $template = ($template) ? $template : 'Test/Passer/' . $action; @@ -167,36 +72,7 @@ public function renderTestContent($content) $this->wp->doAction('wp_testing_passer_render_content', $this->test); $this->wp->doAction('wp_testing_passer_render_content_' . $action, $this->test); - $content = $this->createActionProcessor($action)->renderContent($content, $template); - - if ($hasFilter) { - $this->canRenderOnFilter = true; - } - return $content; - } - - private function dieUnderConctruction() - { - return $this->dieMessage('Test/Passer/respondent-message', 403, array( - 'title' => __('Test is under construction', 'wp-testing'), - 'content' => __('You can not get any results from it yet.', 'wp-testing'), - )); - } - - private function prepareToLevenshein($input) - { - $levensteinMax = 255; - $input = preg_replace('#(.*?)#is', '', $input); - return substr(preg_replace('/\s+/', ' ', html_entity_decode(strip_tags($input))), 0, $levensteinMax); - } - - /** - * @param string $text - * @return boolean - */ - private function hasShortcodes($text) - { - return (strstr($text, '[') !== false); + return $this->createActionProcessor($action)->renderContent($content, $template); } private function getTestPassingAction() diff --git a/src/Doer/TestPasser/DirectRenderer.php b/src/Doer/TestPasser/DirectRenderer.php new file mode 100644 index 00000000..cd460276 --- /dev/null +++ b/src/Doer/TestPasser/DirectRenderer.php @@ -0,0 +1,29 @@ +beforeRender($test); + } catch (UnexpectedValueException $e) { + return __('Test is under construction', 'wp-testing'); + } + + $filterer->close(); + $content = $this->wp->applyFilters('the_content', $test->getContent()); + $content = $this->renderTestContent($content); + $filterer->open(); + + return $content; + } +} diff --git a/src/Doer/TestPasser/FilterRenderer.php b/src/Doer/TestPasser/FilterRenderer.php new file mode 100644 index 00000000..5f91a8c7 --- /dev/null +++ b/src/Doer/TestPasser/FilterRenderer.php @@ -0,0 +1,109 @@ +isPostType('wpt_test')) { + return $this; + } + + try { + $this->beforeRender($this->createTest($this->wp->getQuery()->get_queried_object())); + } catch (UnexpectedValueException $e) { + return $this->dieUnderConctruction(); + } + + $this->wp->addFilter('the_content', array($this, 'renderOnFilter'), 5); + return $this; + } + + /** + * @param string $content + * @return string + */ + public function renderOnFilter($content) + { + if ($this->canRenderOnFilter !== true) { + return $content; + } + + // Protection for calling the_content filter not on current test content + $testContent = $this->test->getContent(); + $isSimilar = empty($testContent) || 50 > levenshtein( + $this->prepareToLevenshein($testContent), + $this->prepareToLevenshein($content) + ); + if (!$isSimilar) { + return $content; + } + + // Protection for many times calling the_content filter + if (!is_null($this->filteredTestContent)) { + return $this->filteredTestContent; + } + + $this->close(); + $this->filteredTestContent = $renderedContent = $this->renderTestContent($content); + $this->open(); + + // Not cache for content, that is cleared of shortcodes + $isShortcodesCleared = ($this->hasShortcodes($testContent) && !$this->hasShortcodes($content)); + if ($isShortcodesCleared) { + $this->filteredTestContent = null; + } + + return $renderedContent; + } + + public function open() + { + $this->canRenderOnFilter = true; + return $this; + } + + public function close() + { + $this->canRenderOnFilter = false; + return $this; + } + + private function prepareToLevenshein($input) + { + $levensteinMax = 255; + $input = preg_replace('#(.*?)#is', '', $input); + return substr(preg_replace('/\s+/', ' ', html_entity_decode(strip_tags($input))), 0, $levensteinMax); + } + + /** + * @param string $text + * @return boolean + */ + private function hasShortcodes($text) + { + return (strstr($text, '[') !== false); + } + + private function dieUnderConctruction() + { + return $this->dieMessage('Test/Passer/respondent-message', 403, array( + 'title' => __('Test is under construction', 'wp-testing'), + 'content' => __('You can not get any results from it yet.', 'wp-testing'), + )); + } +} diff --git a/src/Facade.php b/src/Facade.php index 8a7a454e..9614a33e 100644 --- a/src/Facade.php +++ b/src/Facade.php @@ -221,11 +221,11 @@ protected function getPostBrowser() } /** - * @return WpTesting_Doer_TestPasser + * @return WpTesting_Doer_TestPasser_FilterRenderer */ public function getTestPasser() { - return $this->getDoer('TestPasser'); + return $this->getDoer('TestPasser_FilterRenderer'); } /** diff --git a/src/Facade/ITestPasser.php b/src/Facade/ITestPasser.php index 4cf8a0ee..f37c9285 100644 --- a/src/Facade/ITestPasser.php +++ b/src/Facade/ITestPasser.php @@ -7,7 +7,7 @@ interface WpTesting_Facade_ITestPasser { /** - * @return WpTesting_Doer_TestPasser + * @return WpTesting_Doer_TestPasser_FilterRenderer */ public function getTestPasser(); } From 90b120abb1f8af83df818f0685c1d96db0f3cdc5 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Fri, 9 Oct 2015 00:18:58 +0600 Subject: [PATCH 16/22] Test shortcodes render fails --- tests/mocha/test/shortcode.js | 92 +++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) diff --git a/tests/mocha/test/shortcode.js b/tests/mocha/test/shortcode.js index 971c43fe..8d9c0ec9 100644 --- a/tests/mocha/test/shortcode.js +++ b/tests/mocha/test/shortcode.js @@ -222,4 +222,96 @@ describe('Shortcode', function() { }) }) }) + + describe('not fails other rendering', function() { + var content = '[caption align="aligncenter" width="300" caption="Caption1"]' + + it('should create new scale with caption shortcode inside', function() { + casper.thenOpen(server + '/wp-admin/', function() { + this.clickLabel('Scales', '*[@id="menu-posts-wpt_test"]/*//a') + }) + + casper.then(function() { + 'Scales'.should.be.inTitle + + this.fill('form#addtag', { + 'tag-name' : 'Scale Caption', + 'description' : content + }, true) + + this.waitForText('Scale Caption') + }) + }) + + it('should create new test with one question, answer, created scale and caption shortcode in description', function() { + casper.then(function() { + this.clickLabel('Add New', '*[@id="menu-posts-wpt_test"]/*//a') + }) + + casper.then(function() { + 'Fatal'.should.not.be.textInDOM + 'Add New Test'.should.be.inTitle + + this.evaluate(function() { + jQuery('#edButtonHTML,#content-html').addClass('__text_tab_here') + }) + this.click('.__text_tab_here') + + this.clickLabel(' Scale Caption', 'label') + this.clickLabel(' Yes', 'label') + this.fillSelectors('form#post', { + '#title': 'Test With Caption Shortcodes', + '#content': content, + '#wpt_question_title_0': 'First or last?' + }, true) + }) + + casper.waitForUrl(/message/, function() { + 'Fatal'.should.not.be.textInDOM + '#message'.should.be.inDOM + this.fillSelectors('form#post', { + '#wpt_score_value_0_0': '1', + }, true) + }) + }) + + it('should open created test', function() { + casper.evaluate(function() { + document.location = jQuery('#post-preview').attr('href') + }) + casper.waitForUrl(/wpt_test/) + }) + + it('should show that question and answer are rendered', function() { + casper.then(function() { + 'First or last?'.should.be.textInDOM + 'Yes'.should.be.textInDOM + }) + }) + + it('should show that shortcode also rendered', function() { + casper.then(function() { + '[caption'.should.not.be.textInDOM + 'Caption1'.should.be.textInDOM + }) + }) + + it('should open result page', function() { + casper.then(function() { + this.clickLabel('Yes', '*[starts-with(@id, "wpt-test-form")]/*[1]/*//label') + this.fill('form.wpt_test_form', {}, true) + }).waitForUrl(/wpt_passing_slug.+[a-z0-9]+[a-f0-9]{32}/, function() { + 'Fatal'.should.not.be.textInDOM + 'Results'.should.be.textInDOM + }) + }) + + it('should show that shortcode in scale rendered', function() { + casper.then(function() { + 'Scale Caption'.should.be.textInDOM + '[caption'.should.not.be.textInDOM + 'Caption1'.should.be.textInDOM + }) + }) + }) }) From 44496b4419071a94b4e1f222b676a31d7e9847d9 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 11 Oct 2015 21:39:55 +0600 Subject: [PATCH 17/22] Extract wordpress IPriority --- src/Addon/IWordPressFacade.php | 8 +------- src/Doer/PassingBrowser.php | 2 +- src/Doer/PassingBrowser/Admin.php | 6 +++--- src/Doer/TestEditor.php | 12 ++++++------ src/Doer/TestPasser/FilterRenderer.php | 2 +- src/Doer/TestPasserAction/FillForm.php | 2 +- src/Facade.php | 2 +- src/WordPress/IPriority.php | 25 +++++++++++++++++++++++++ src/WordPressFacade.php | 6 +++--- src/bootstrap.php | 1 + 10 files changed, 43 insertions(+), 23 deletions(-) create mode 100644 src/WordPress/IPriority.php diff --git a/src/Addon/IWordPressFacade.php b/src/Addon/IWordPressFacade.php index 06c1cd66..00bb8819 100644 --- a/src/Addon/IWordPressFacade.php +++ b/src/Addon/IWordPressFacade.php @@ -1,14 +1,8 @@ 10, 'option' => 'passing_browser_per_page', )) - ->addFilter('set-screen-option', array($this, 'validatePerPageOption'), WpTesting_Addon_IWordPressFacade::PRIORITY_DEFAULT, 3) + ->addFilter('set-screen-option', array($this, 'validatePerPageOption'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 3) ->setScreenOptions() ; diff --git a/src/Doer/PassingBrowser/Admin.php b/src/Doer/PassingBrowser/Admin.php index cce05c24..bcc0180f 100644 --- a/src/Doer/PassingBrowser/Admin.php +++ b/src/Doer/PassingBrowser/Admin.php @@ -10,9 +10,9 @@ public function registerPages() parent::registerPages(); $this->wp - ->addAction('wp_testing_passing_browser_admin_process_trash', array($this, 'processActionTrash'), WpTesting_Addon_IWordPressFacade::PRIORITY_DEFAULT, 2) - ->addAction('wp_testing_passing_browser_admin_process_untrash', array($this, 'processActionUntrash'), WpTesting_Addon_IWordPressFacade::PRIORITY_DEFAULT, 2) - ->addAction('wp_testing_passing_browser_admin_process_delete', array($this, 'processActionDelete'), WpTesting_Addon_IWordPressFacade::PRIORITY_DEFAULT, 2) + ->addAction('wp_testing_passing_browser_admin_process_trash', array($this, 'processActionTrash'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 2) + ->addAction('wp_testing_passing_browser_admin_process_untrash', array($this, 'processActionUntrash'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 2) + ->addAction('wp_testing_passing_browser_admin_process_delete', array($this, 'processActionDelete'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 2) ; return $this; diff --git a/src/Doer/TestEditor.php b/src/Doer/TestEditor.php index 6445868e..e8a2fc82 100644 --- a/src/Doer/TestEditor.php +++ b/src/Doer/TestEditor.php @@ -40,13 +40,13 @@ public function customizeUi($screen) ->addMetaBox('wpt_edit_questions', __('Edit Questions and Scores', 'wp-testing'), array($this, 'renderEditQuestions'), 'wpt_test') ->addMetaBox('wpt_add_questions', __('Add New Questions', 'wp-testing'), array($this, 'renderAddQuestions'), 'wpt_test') ->addMetaBox('wpt_edit_formulas', __('Edit Formulas', 'wp-testing'), array($this, 'renderEditFormulas'), 'wpt_test') - ->addAction('save_post', array($this, 'saveTest'), 10, 2) + ->addAction('save_post', array($this, 'saveTest'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 2) ; // Respect metabox sort order if ($this->isWordPressAlready('3.4')) { - $this->wp->addFilter('wp_terms_checklist_args', array($this, 'filterTermsChecklistArgs'), 10, 2); + $this->wp->addFilter('wp_terms_checklist_args', array($this, 'filterTermsChecklistArgs'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 2); } else { - $this->wp->addFilter('wp_get_object_terms', array($this, 'filterForceSortObjectTerms'), 10, 4); + $this->wp->addFilter('wp_get_object_terms', array($this, 'filterForceSortObjectTerms'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 4); } $this->wp->doAction('wp_testing_editor_customize_ui_after'); return $this; @@ -99,7 +99,7 @@ public function filterTermsChecklistArgs($args, $postId = null) 'orderby' => 'term_order', )); $this->selectedTermsIds[$taxonomy] = $args['selected_cats']; - $this->wp->addFilterOnce('get_terms_orderby', array($this, 'filterTermsOrderBy'), 10, 3); + $this->wp->addFilterOnce('get_terms_orderby', array($this, 'filterTermsOrderBy'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 3); return $args; } @@ -118,7 +118,7 @@ public function filterForceSortObjectTerms($terms, $objectIds, $taxonomies, $arg $model = new WpTesting_Model_Taxonomy(); $terms = $model->sortTermIdsByTermOrder($objectIds, $terms); $this->selectedTermsIds[$args['taxonomy']] = $terms; - $this->wp->addFilterOnce('get_terms_orderby', array($this, 'filterTermsOrderBy'), 10, 3); + $this->wp->addFilterOnce('get_terms_orderby', array($this, 'filterTermsOrderBy'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 3); return $terms; } @@ -131,7 +131,7 @@ public function filterForceSortObjectTerms($terms, $objectIds, $taxonomies, $arg public function filterTermsOrderBy($orderBy, $args, $taxonomies = null) { if (is_null($taxonomies)) { // Old WP versions workaround - $this->wp->removeFilter('get_terms_orderby', array($this, 'filterTermsOrderBy'), 10, 3); + $this->wp->removeFilter('get_terms_orderby', array($this, 'filterTermsOrderBy'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 3); end($this->selectedTermsIds); $taxonomies = array(key($this->selectedTermsIds)); } diff --git a/src/Doer/TestPasser/FilterRenderer.php b/src/Doer/TestPasser/FilterRenderer.php index 5f91a8c7..2130a822 100644 --- a/src/Doer/TestPasser/FilterRenderer.php +++ b/src/Doer/TestPasser/FilterRenderer.php @@ -29,7 +29,7 @@ public function addContentFilter() return $this->dieUnderConctruction(); } - $this->wp->addFilter('the_content', array($this, 'renderOnFilter'), 5); + $this->wp->addFilter('the_content', array($this, 'renderOnFilter'), WpTesting_WordPress_IPriority::PRIORITY_HIGH); return $this; } diff --git a/src/Doer/TestPasserAction/FillForm.php b/src/Doer/TestPasserAction/FillForm.php index deb542c5..a674ea65 100644 --- a/src/Doer/TestPasserAction/FillForm.php +++ b/src/Doer/TestPasserAction/FillForm.php @@ -38,7 +38,7 @@ public function beforeRender(WpTesting_Model_Test $test, WpTesting_Model_Passing ->fixFooterScriptsForOldWordPress() ; $this->wp - ->addFilter('wp_title', array($this, 'extractTitleSeparator'), 10, 2) + ->addFilter('wp_title', array($this, 'extractTitleSeparator'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 2) ->doAction('wp_testing_passer_fill_form_before_render', $this->passing, $this->test) ; } diff --git a/src/Facade.php b/src/Facade.php index 9614a33e..18b27d02 100644 --- a/src/Facade.php +++ b/src/Facade.php @@ -122,7 +122,7 @@ protected function registerWordPressHooks() } $this->wp ->registerActivationHook( array($this, 'onPluginActivate')) - ->addFilter('upgrader_post_install', array($this, 'onPluginUpgrade'), 10, 2) + ->addFilter('upgrader_post_install', array($this, 'onPluginUpgrade'), WpTesting_WordPress_IPriority::PRIORITY_DEFAULT, 2) ->registerDeactivationHook( array($this, 'onPluginDeactivate')) ->registerUninstallHook( array($class, 'onPluginUninstall')) ->addAction('admin_menu', array($this, 'registerAdminPages')) diff --git a/src/WordPress/IPriority.php b/src/WordPress/IPriority.php new file mode 100644 index 00000000..2b7fd273 --- /dev/null +++ b/src/WordPress/IPriority.php @@ -0,0 +1,25 @@ +hasFilter($tag, $function) !== false) { return $this; diff --git a/src/bootstrap.php b/src/bootstrap.php index f1824df8..5baa0cdb 100644 --- a/src/bootstrap.php +++ b/src/bootstrap.php @@ -1,6 +1,7 @@ Date: Sun, 15 Nov 2015 01:40:30 +0600 Subject: [PATCH 18/22] Setup site script * Add capser here * Upgrade nginx reload * Preactivate plugin * Autoconvert videos --- tests/integration-environment/create.sh | 4 +- tools/intro-video/convert.sh | 2 + tools/intro-video/package.json | 5 ++ tools/intro-video/setup-site.js | 76 +++++++++++++++++++++++++ tools/intro-video/setup-site.sh | 12 ++++ 5 files changed, 97 insertions(+), 2 deletions(-) create mode 100755 tools/intro-video/convert.sh create mode 100644 tools/intro-video/package.json create mode 100644 tools/intro-video/setup-site.js create mode 100755 tools/intro-video/setup-site.sh diff --git a/tests/integration-environment/create.sh b/tests/integration-environment/create.sh index d4fd0f1f..89d2cc9f 100755 --- a/tests/integration-environment/create.sh +++ b/tests/integration-environment/create.sh @@ -40,8 +40,8 @@ function setup_link { function start_nginx { log 'Configuring and reloading nginx' - ps ax | grep "[n]ginx -g" && nginx -g "error_log /tmp/wpti/error.log;" -c /tmp/wpti/nginx.conf -s stop - nginx -g "error_log /tmp/wpti/error.log;" -c /tmp/wpti/nginx.conf + ps ax | grep "[n]ginx -c" && nginx -c /tmp/wpti/nginx.conf -g "error_log /tmp/wpti/error.log;" -s stop + nginx -c /tmp/wpti/nginx.conf -g "error_log /tmp/wpti/error.log;" } function php_cgi { diff --git a/tools/intro-video/convert.sh b/tools/intro-video/convert.sh new file mode 100755 index 00000000..5849c68e --- /dev/null +++ b/tools/intro-video/convert.sh @@ -0,0 +1,2 @@ +mkdir -p mkv +ls -1 ogv/* | xargs -n 1 basename -s .ogv | xargs -I {} ffmpeg -y -i ogv/{}.ogv -c copy mkv/{}.mkv diff --git a/tools/intro-video/package.json b/tools/intro-video/package.json new file mode 100644 index 00000000..7c71e301 --- /dev/null +++ b/tools/intro-video/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "casperjs": "^1.1.0-beta3" + } +} diff --git a/tools/intro-video/setup-site.js b/tools/intro-video/setup-site.js new file mode 100644 index 00000000..a02f9b99 --- /dev/null +++ b/tools/intro-video/setup-site.js @@ -0,0 +1,76 @@ +var casper = require('casper').create({ + verbose: true, + logLevel: "debug" +}); + +casper.options.viewportSize = {width: 1280, height: 850} + +casper +.start('http://wpti.dev:8000/') + +.thenOpen('http://wpti.dev:8000/wp-login.php', { + method: 'post', + data : { + log: 'wpti', + pwd: 'wpti' + } +}) + +.thenOpen('http://wpti.dev:8000/wp-admin/profile.php', function() { + this.clickLabel('Blue', 'label') + this.fill('form#your-profile', { + nickname : 'Tests Author', + display_name : 'Tests Author', + email : 'ustimenko.alexander@gmail.com' + }, true) +}).waitForUrl(/updated/) + +.thenOpen('http://wpti.dev:8000/wp-admin/options-general.php', function() { + this.fill('form', { + blogname : 'Psychological tests and quizzes', + blogdescription : 'WordPress testing plugin' + }, true) +}).waitForUrl(/updated/) + +.thenOpen('http://wpti.dev:8000/wp-admin/options-permalink.php', function() { + this.click('#permalink_structure') + this.sendKeys('#permalink_structure', '/%postname%/') + this.click('#submit') +}).waitForUrl(/options/) + +.thenOpen('http://wpti.dev:8000/wp-admin/customize.php?theme=twentyfifteen', function() { + this.evaluate(function() { + function changeColor(name, value) { + jQuery('#customize-control-' + name + ' .wp-color-picker') + .val(value) + .change(); + }; + + changeColor('background_color', '#e0e046'); + changeColor('sidebar_textcolor', '#1B380F'); + changeColor('header_background_color', '#b8f741'); + + }) + + this.click('#save') +}).waitForText('Saved') + +.thenOpen('http://wpti.dev:8000/wp-admin/plugins.php', function () { + this.click('#cb input') + this.evaluate(function() { + jQuery('.wrap form select:first').val('activate-selected') + }) + this.click('#doaction') +}).waitForUrl(/activate/, null, null, 60000) + +.then(function() { + this.click('#cb input') + this.evaluate(function() { + jQuery('.wrap form select:first').val('deactivate-selected') + }) + this.click('#doaction') +}).waitForUrl(/deactivate/) + +casper.run(function() { + this.exit() +}) diff --git a/tools/intro-video/setup-site.sh b/tools/intro-video/setup-site.sh new file mode 100755 index 00000000..ff03dc32 --- /dev/null +++ b/tools/intro-video/setup-site.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash + +set -e + +HERE=$(readlink -f $(dirname "$0")) + +cd $HERE/../.. + +tests/integration-environment/create.sh + +cd $HERE +PHANTOMJS_EXECUTABLE=node_modules/casperjs/node_modules/.bin/phantomjs node_modules/.bin/casperjs setup-site.js From 5d83dbc6895a0b9337a2d0a59067f23e5c384c4d Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 15 Nov 2015 01:02:23 +0600 Subject: [PATCH 19/22] Add video project and intro-image * Sort gitignore --- .gitignore | 27 +- tools/intro-video/Wp-testing-Intro.kdenlive | 3978 +++++++++++++++++++ tools/intro-video/img/01-title.png | Bin 0 -> 289548 bytes tools/intro-video/img/01-title.xcf | Bin 0 -> 492504 bytes 4 files changed, 3997 insertions(+), 8 deletions(-) create mode 100644 tools/intro-video/Wp-testing-Intro.kdenlive create mode 100644 tools/intro-video/img/01-title.png create mode 100644 tools/intro-video/img/01-title.xcf diff --git a/.gitignore b/.gitignore index 7a6ea819..bcb8f980 100644 --- a/.gitignore +++ b/.gitignore @@ -1,23 +1,34 @@ +/composer.lock /db/log/*.log /db/ruckusing.conf.local.php /db/sql/*.bak -/composer.lock /js/vendor/evercookie /js/vendor/uuid-js /phpunit.xml -/tests/mocha/node_modules/ -/tests/integration-environment/cache/*.* -/tests/integration-environment/wordpress/ -/tests/integration-environment/wordpress-*.tar.gz -/tests/integration-environment/*.zip /tests/integration-environment/*.log /tests/integration-environment/*.pid +/tests/integration-environment/*.zip +/tests/integration-environment/cache/*.* +/tests/integration-environment/wordpress-*.tar.gz +/tests/integration-environment/wordpress/ +/tests/mocha/node_modules/ +/tools/intro-video/*.mp4 +/tools/intro-video/.backup/ +/tools/intro-video/Wp-testing-Intro.mp4.txt +/tools/intro-video/aifc/ +/tools/intro-video/background/ +/tools/intro-video/mkv/ +/tools/intro-video/mp3/ +/tools/intro-video/node_modules/ +/tools/intro-video/ogv/ +/tools/intro-video/thumbnail/ +/tools/intro-video/thumbs/ /tools/refactoring/*.sql /tools/refactoring/*.svg +/tools/screenshots/decorated/*.png /tools/screenshots/node_modules/ /tools/screenshots/raw/*.png -/tools/screenshots/decorated/*.png -/tools/support/*.txt /tools/support/*.md +/tools/support/*.txt /tools/support/wordpress-support-mirror/ /vendor/ diff --git a/tools/intro-video/Wp-testing-Intro.kdenlive b/tools/intro-video/Wp-testing-Intro.kdenlive new file mode 100644 index 00000000..9d397175 --- /dev/null +++ b/tools/intro-video/Wp-testing-Intro.kdenlive @@ -0,0 +1,3978 @@ + + + + + mlt_producer + 00:00:11:03 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 178049 + bd6e3c02773e484b272693995512e9a8 + 1 + + + mlt_producer + 00:00:23:18 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/02.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 1728030 + 37bd02aa2b7e99312ec7a9b164404163 + 1 + + + producer + 00:00:11:04 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/img/01-title.png + 25 + 1 + 1 + 1 + 1 + 1616 + 1024 + pixbuf + 289548 + 563e9403b590b549efcb267964aaaede + + + mlt_producer + 00:00:01:29 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/02-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + let-s-activate + 1 + 31822 + 1939c5615953ed27815175e57feafe46 + 1 + + + mlt_producer + 00:00:03:28 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/02-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + we-see-menu + 1 + 63166 + dd36d980819cd5dc027826ae361f187b + 1 + + + mlt_producer + 00:00:04:09 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 68962 + 7eee8c0249883ca260368f712a4ac1c2 + 1 + + + mlt_producer + 00:00:23:14 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/03.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 1117157 + 70f3a60e2d555e45dc3560b1bffe1732 + 57 + 123 + 1 + + + mlt_producer + 00:03:40:26 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/04.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 39351947 + a9fc7d435e2203aa5d6f52e535e5a4b8 + 1 + + + mlt_producer + 00:00:03:08 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + 1 + 52707 + 38ea7d77bec24830d9104de839b124c4 + 1 + + + mlt_producer + 00:00:02:01 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + 1 + 33063 + 4062144bcced45436fa7a007c6d84a04 + 1 + + + mlt_producer + 00:00:01:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + 1 + 27630 + 593f765c4c68c67c4e8240c59369506a + 1 + + + mlt_producer + 00:00:03:02 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 1 + 1 + 49364 + 02f0c8ac186266eb8e748338325e6598 + 1 + + + mlt_producer + 00:00:05:18 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-05.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 5 + 2 + 1 + 89906 + 76d499c3e1c61f5b0dbf0e2e62b242f4 + 1 + + + mlt_producer + 00:00:06:16 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-06.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 6 + 3 + 1 + 104952 + 042b06d23062bf430ab1fc67a2d7e916 + 1 + + + mlt_producer + 00:00:02:25 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-07.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 7 + 4 + 1 + 45602 + e0a9826c88e2fe3653bc2d44004a99ff + 1 + + + mlt_producer + 00:00:08:03 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-08.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 8 + 5 + 1 + 130030 + e69fb428f3f018d0943c99ebb0ec1ca4 + 1 + + + mlt_producer + 00:00:05:10 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-09.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 9 + 6 + 1 + 85726 + 7718caef35699b71f7b6dd7a57874cf9 + 1 + + + mlt_producer + 00:00:02:06 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-10.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 10 + 7 + 1 + 35572 + e053ca72af68f505c896fb13ed6c12b3 + 1 + + + mlt_producer + 00:00:07:16 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-11.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 11 + 1 + 1 + 120836 + 1c1bb1fd0bed7f9768e4403b7f4bcf74 + 1 + + + mlt_producer + 00:00:02:27 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-12.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 12 + 2 + 1 + 46857 + d2e7f09855715be1d9a5c204e59fd4e5 + 1 + + + mlt_producer + 00:00:04:02 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-13.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 13 + 3 + 1 + 65665 + 9c0ac2f2a153d4a496fe214478bd49ae + 1 + + + mlt_producer + 00:00:05:00 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-14.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 14 + 4 + 1 + 80294 + 2ca83b3da3bb31e191854cb45834f81b + 1 + + + mlt_producer + 00:00:16:13 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/05.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 1408394 + 1f7e285b7dd04b83b8b24032c75bb0d8 + 1 + + + mlt_producer + 00:00:03:23 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/05-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 5-e-1 + 1 + 60653 + 1576e9d09b4c7a81146dbf6e110436a3 + 1 + + + mlt_producer + 00:00:24:12 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/06.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 1429384 + cdbc83b7cd9614f8ba1974182f5d7442 + 1 + + + mlt_producer + 00:00:11:12 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/06.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 186826 + 1861092116fbd860f9eb2fa2937f2983 + 1 + + + mlt_producer + 00:00:51:06 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/07.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 5194049 + 30a756a8aed7c8ad6d262109790638f7 + 1 + + + mlt_producer + 00:00:05:14 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/07-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + 1 + 87816 + 94a939df862690031800fb37ce903572 + 1 + + + mlt_producer + 00:00:01:15 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/07-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + 1 + 24286 + 69233d392d036399bc98993b0d74afb9 + 1 + + + mlt_producer + 00:00:04:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/07-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + 1 + 75695 + ebc24e3c69be454f51da5ab6365f0f0d + 1 + + + mlt_producer + 00:00:04:01 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/07-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 4 + 1 + 64828 + 6f55a2dfb6808bc4c75fb20f19344b3d + 1 + + + mlt_producer + 00:00:04:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/08-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + 1 + 75695 + e35ae7f9bfab6d831f75c18125404d64 + 1 + + + mlt_producer + 00:00:04:01 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/08-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + 1 + 65246 + aad67fa750d513237f7a24527af9010d + 1 + + + mlt_producer + 00:00:02:08 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/08-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + 1 + 36825 + 8be00f15b0f9d148af048581e39e5702 + 1 + + + mlt_producer + 00:00:05:07 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/08-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 4 + 1 + 84054 + 48f90ba9ddab636bd37cbcbd9ebd6be9 + 1 + + + mlt_producer + 00:00:03:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/08-05.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 5 + 5 + 1 + 59813 + 47ae5213086aa726b96aae7483474aa0 + 1 + + + mlt_producer + 00:00:43:18 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/08.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 6742673 + 827af32503d75ce645645309c7a47acd + 1 + + + mlt_producer + 00:01:08:28 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/09.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 5801961 + 444733a3c51b73634ece83f297ca6f04 + 1 + + + mlt_producer + 00:00:02:08 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + 1 + 36825 + 295de7e3b8434b1a7e081840e599b7a6 + 1 + + + mlt_producer + 00:00:03:04 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + 1 + 50618 + 4d96fb711542d0d1f113a7afa94ae753 + 1 + + + mlt_producer + 00:00:03:28 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + 1 + 63156 + 728372178e545091ed424a43a1fabe54 + 1 + + + mlt_producer + 00:00:02:19 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 4 + 1 + 42676 + c86f8c1e808accf08687552ed00ed4f3 + 1 + + + mlt_producer + 00:00:02:11 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-05.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 5 + 5 + 1 + 38079 + 8486e2d03c503c93d7a2ee0082ccb490 + 1 + + + mlt_producer + 00:00:04:28 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-06.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 6 + 6 + 1 + 79457 + 29c600d011e3082a82332f3d511453e6 + 1 + + + mlt_producer + 00:00:02:03 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-07.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 7 + 7 + 1 + 34317 + 7016d16646d4a8b8288400b23f3dab80 + 1 + + + mlt_producer + 00:00:04:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/10-a-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + 1 + 75695 + b21a0d3b58c7092c3fe386216d21e206 + 1 + + + mlt_producer + 00:00:04:01 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/10-a-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + 1 + 65246 + 0012cf28789db74606c87a7136900529 + 1 + + + mlt_producer + 00:00:06:03 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/10-a-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + 1 + 97847 + 62b8d1048855817321d0adc0c6be0ee7 + 1 + + + mlt_producer + 00:00:03:06 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/10-a-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 4 + 1 + 51872 + c3d99eba5076166fc9edc420518e42a4 + 1 + + + mlt_producer + 00:00:48:24 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/10.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 3363182 + 9b692dbd68bb5567c3894d4fb6c2fef0 + 1 + + + mlt_producer + 00:00:47:20 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/11.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 3313095 + 81250357bbecd701f7ab6d1cca8abbb6 + 1 + + + mlt_producer + 00:00:15:26 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/11-a-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + 1 + 254582 + 6cd94488272f4f76b933ec5690e9ecc1 + 1 + + + mlt_producer + 00:00:04:23 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/11-a-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + 1 + 76949 + 8259501805d7652112de4d2c11de3703 + 1 + + + mlt_producer + 00:00:07:16 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/11-a-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + 1 + 121253 + cecf06099b4d584e9d3132483195a288 + 1 + + + mlt_producer + 00:00:02:22 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/11-a-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 4 + 1 + 44348 + b64bd49a4e6e1273f017030fdad37da5 + 1 + + + mlt_producer + 00:00:05:04 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/12-c.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 82754 + c070abab23f054213a3a2f738e9d7edd + 1 + + + mlt_producer + 00:00:06:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/12-a-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + 1 + 107460 + 31b73205d955dc90eafe588a0ab97ccb + 1 + + + mlt_producer + 00:00:16:11 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/12-a-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + 1 + 262105 + 74f8da2a5259b72c9987e68dff385531 + 1 + + + mlt_producer + 00:00:03:16 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/12-a-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 4 + 1 + 56887 + 5cfc7d7cc32df80026d26ce16abe8405 + 1 + + + mlt_producer + 00:00:01:02 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/12-a-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 5 + 1 + 17599 + b44a8669f68c34d0955aacbbbab993e5 + 1 + + + mlt_producer + 00:00:56:28 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/12.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 3824166 + 9714b71dd4ed177ececb2e4da358cbec + 1 + + + producer + 00:00:26:26 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/13.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + 1886105 + fac558b231c32d715f5dfe175e9fdbd8 + + + mlt_producer + 00:00:12:19 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/13-a.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 202709 + c331b70e4745075db5da79091629debb + 1 + + + mlt_producer + 00:00:07:15 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/13-c.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + 1 + 120417 + f2080ed96da4ecdef95d2a36c4f2ed07 + 1 + + + mlt_producer + 00:00:03:18 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/13-f.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 58095 + b81845c49e856dc62ef5f3d8b526125d + 1 + + + mlt_producer + 00:00:38:08 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/14.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 612727 + 45bc5eb20e0128ec2b8dc7e65c6e570c + 1 + + + mlt_producer + 00:06:40:22 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/05_Roland TR 707 Beat 115 bpm.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 192000 + LAME3.99r + 1 + 1 + 1 + 9618539 + b90b648c7057c29ef96ac4f4e6734e9a + 1 + + + mlt_producer + 00:04:13:22 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/background/Drop-2-funky-lounge-pop-song.wav + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16 + 44100 + 2 + pcm_s16le + PCM signed 16-bit little-endian + 1411200 + 1 + 44765392 + 2cb89268180f2606da0998e5ab37eb8e + 1 + + + mlt_producer + 00:06:40:01 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/Jazzistic-music-loop-120-bpm.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 192000 + LAME3.99r + 1 + 1 + 1 + 9601612 + a9053f224a4bcb215eb1e38b190172c2 + 1 + + + <customeffects/> + + 1446664988374 + 0 + 0 + 0 + 15.08.0 + 11661 + atsc_720p_30 + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video + ts + 2000 + 1000 + -f mpegts -acodec libmp3lame -ac 2 -ab 128k -vcodec mpeg2video -g 5 -s 640x480 -qscale 7 + 0.91 + 1 + 1700 + 2006 + 6 + + <groups/> + + + 192 + 25 + MP4 + + -1 + 0 + 0 + 0 + H.264/AAC High Profile + 1 + 0 + 180 + 320 + 0 + -1 + 0 + 0 + 0 + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/Wp-testing-Intro.mp4 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + producer + 23730 + pause + black + 0 + colour + + + + + + producer + 00:00:11:03 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 178049 + bd6e3c02773e484b272693995512e9a8 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + + + producer + 00:00:01:29 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/02-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 31822 + 1939c5615953ed27815175e57feafe46 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + let-s-activate + + + producer + 00:00:03:28 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/02-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 63166 + dd36d980819cd5dc027826ae361f187b + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + we-see-menu + + + producer + 00:00:04:09 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 68962 + 7eee8c0249883ca260368f712a4ac1c2 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + + + producer + 00:00:03:08 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 52707 + 38ea7d77bec24830d9104de839b124c4 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + + + producer + 00:00:02:01 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 33063 + 4062144bcced45436fa7a007c6d84a04 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + + + producer + 00:00:01:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 27630 + 593f765c4c68c67c4e8240c59369506a + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + + + producer + 00:00:03:02 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 49364 + 02f0c8ac186266eb8e748338325e6598 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 1 + + + producer + 00:00:05:18 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-05.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 89906 + 76d499c3e1c61f5b0dbf0e2e62b242f4 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 5 + 2 + + + producer + 00:00:06:16 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-06.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 104952 + 042b06d23062bf430ab1fc67a2d7e916 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 6 + 3 + + + producer + 00:00:02:25 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-07.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 45602 + e0a9826c88e2fe3653bc2d44004a99ff + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 7 + 4 + + + producer + 00:00:08:03 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-08.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 130030 + e69fb428f3f018d0943c99ebb0ec1ca4 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 8 + 5 + + + producer + 00:00:05:10 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-09.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 85726 + 7718caef35699b71f7b6dd7a57874cf9 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 9 + 6 + + + producer + 00:00:02:06 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-10.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 35572 + e053ca72af68f505c896fb13ed6c12b3 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 10 + 7 + + + producer + 00:00:07:16 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-11.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 120836 + 1c1bb1fd0bed7f9768e4403b7f4bcf74 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 11 + 1 + + + producer + 00:00:02:27 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-12.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 46857 + d2e7f09855715be1d9a5c204e59fd4e5 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 12 + 2 + + + producer + 00:00:04:02 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-13.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 65665 + 9c0ac2f2a153d4a496fe214478bd49ae + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 13 + 3 + + + producer + 00:00:05:00 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/04-14.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 80294 + 2ca83b3da3bb31e191854cb45834f81b + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 14 + 4 + + + producer + 00:00:03:23 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/05-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 60653 + 1576e9d09b4c7a81146dbf6e110436a3 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 5-e-1 + + + producer + 00:00:11:12 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/06.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 186826 + 1861092116fbd860f9eb2fa2937f2983 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + + + producer + 00:00:05:14 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/07-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 87816 + 94a939df862690031800fb37ce903572 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + + + producer + 00:00:01:15 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/07-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 24286 + 69233d392d036399bc98993b0d74afb9 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + + + producer + 00:00:04:01 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/07-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 64828 + 6f55a2dfb6808bc4c75fb20f19344b3d + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 4 + + + producer + 00:00:04:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/07-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 75695 + ebc24e3c69be454f51da5ab6365f0f0d + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + + + producer + 00:00:04:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/08-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 75695 + e35ae7f9bfab6d831f75c18125404d64 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + + + producer + 00:00:04:01 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/08-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 65246 + aad67fa750d513237f7a24527af9010d + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + + + producer + 00:00:02:08 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/08-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 36825 + 8be00f15b0f9d148af048581e39e5702 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + + + producer + 00:00:05:07 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/08-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 84054 + 48f90ba9ddab636bd37cbcbd9ebd6be9 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 4 + + + producer + 00:00:03:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/08-05.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 59813 + 47ae5213086aa726b96aae7483474aa0 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 5 + 5 + + + producer + 00:00:02:08 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 36825 + 295de7e3b8434b1a7e081840e599b7a6 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + + + producer + 00:00:03:04 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 50618 + 4d96fb711542d0d1f113a7afa94ae753 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + + + producer + 00:00:03:28 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 63156 + 728372178e545091ed424a43a1fabe54 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + + + producer + 00:00:02:19 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 42676 + c86f8c1e808accf08687552ed00ed4f3 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 4 + + + producer + 00:00:02:11 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-05.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 38079 + 8486e2d03c503c93d7a2ee0082ccb490 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 5 + 5 + + + producer + 00:00:04:28 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-06.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 79457 + 29c600d011e3082a82332f3d511453e6 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 6 + 6 + + + producer + 00:00:02:03 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/09-g-07.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 34317 + 7016d16646d4a8b8288400b23f3dab80 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 7 + 7 + + + producer + 00:00:04:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/10-a-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 75695 + b21a0d3b58c7092c3fe386216d21e206 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + + + producer + 00:00:04:01 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/10-a-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 65246 + 0012cf28789db74606c87a7136900529 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + + + producer + 00:00:06:03 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/10-a-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 97847 + 62b8d1048855817321d0adc0c6be0ee7 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + + + producer + 00:00:03:06 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/10-a-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 51872 + c3d99eba5076166fc9edc420518e42a4 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 4 + + + producer + 00:00:15:26 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/11-a-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 254582 + 6cd94488272f4f76b933ec5690e9ecc1 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + + + producer + 00:00:04:23 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/11-a-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 76949 + 8259501805d7652112de4d2c11de3703 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + + + producer + 00:00:07:16 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/11-a-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 121253 + cecf06099b4d584e9d3132483195a288 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 3 + + + producer + 00:00:02:22 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/11-a-04.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 44348 + b64bd49a4e6e1273f017030fdad37da5 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 4 + 4 + + + producer + 00:00:06:21 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/12-a-01.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 107460 + 31b73205d955dc90eafe588a0ab97ccb + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + + + producer + 00:00:16:11 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/12-a-02.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 262105 + 74f8da2a5259b72c9987e68dff385531 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 2 + 2 + + + producer + 00:00:05:04 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/12-c.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 82754 + c070abab23f054213a3a2f738e9d7edd + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + + + producer + 00:00:03:16 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/12-a-03.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 56887 + 5cfc7d7cc32df80026d26ce16abe8405 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 3 + 4 + + + producer + 00:00:12:19 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/13-a.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 202709 + c331b70e4745075db5da79091629debb + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + + + producer + 00:00:07:15 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/13-c.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 120417 + f2080ed96da4ecdef95d2a36c4f2ed07 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + 1 + 1 + + + producer + 00:00:03:18 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/13-f.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 58095 + b81845c49e856dc62ef5f3d8b526125d + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + + + producer + 00:00:38:08 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/14.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 612727 + 45bc5eb20e0128ec2b8dc7e65c6e570c + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 128000 + LAME3.99r + + + Audio + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + producer + 2650 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/04.mkv?2,5 + 1 + framebuffer + 1 + + + producer + 3897 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/04.mkv?1,7 + 1 + framebuffer + 1 + + + producer + 1656 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/04.mkv?4 + 1 + framebuffer + 1 + + + producer + 1104 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/04.mkv?6 + 1 + framebuffer + 1 + + + producer + 6626 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/04.mkv?1 + 1 + framebuffer + + + producer + 5096 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/04.mkv?1,3 + 1 + framebuffer + 1 + + + producer + 5521 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/04.mkv?1,2 + 1 + framebuffer + 1 + + + producer + 2194 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/07.mkv?0,7 + 1 + framebuffer + 1 + + + producer + 768 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/07.mkv?2 + 1 + framebuffer + 1 + + + producer + 1024 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/07.mkv?1,5 + 1 + framebuffer + 1 + + + producer + 654 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/08.mkv?2 + 1 + framebuffer + 1 + + + producer + 1034 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/09.mkv?2 + 1 + framebuffer + 1 + + + producer + 2068 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/09.mkv?1 + 1 + framebuffer + + + producer + 00:00:48:24 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/10.mkv + -1 + 0 + 1 + avformat-novalidate + 1 + 1 + 3363182 + 59f0254235256f9391e6f7fae975b3d3 + 1 + was here + 1 + video + 15 + 1 + 1616 + 1024 + 15 + yuv420p + 1 + 709 + theora + Theora + 0 + 0.3.8.1 + Lavf56.36.100 + 1 + 1 + 15 + 1 + 709 + 2 + 1616 + 1024 + 0 + 1 + + + producer + 1171 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/10.mkv?1,25 + 1 + framebuffer + 1 + + + producer + 1464 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/10.mkv?1 + 1 + framebuffer + + + producer + 2042 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/11.mkv?0,7 + 1 + framebuffer + 1 + + + producer + 953 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/11.mkv?1,5 + 1 + framebuffer + 1 + + + producer + 476 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/11.mkv?3 + 1 + framebuffer + 1 + + + producer + 1423 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/12.mkv?1,2 + 1 + framebuffer + 1 + + + producer + 1708 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/12.mkv?1 + 1 + framebuffer + + + producer + 3416 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/12.mkv?0,5 + 1 + framebuffer + 1 + + + producer + 1343 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/13.mkv?0,6 + 1 + framebuffer + 1 + + + producer + 2015 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/13.mkv?0,4 + 1 + framebuffer + 1 + + + producer + 806 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mkv/13.mkv?1 + 1 + framebuffer + + + Video + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 1 + filter + brightness + fade_to_black + brightness + 1 + 0 + + + + + + producer + 23731 + pause + projects/UstimenkoAlexander/wp-testing/wp-testing/tools/intro-video/mp3/Jazzistic-music-loop-120-bpm.mp3 + 0 + -1 + 1 + avformat-novalidate + 1 + 9601612 + a9053f224a4bcb215eb1e38b190172c2 + 1 + was here + 1 + audio + s16p + 44100 + 2 + mp3 + MP3 (MPEG audio layer 3) + 192000 + LAME3.99r + 1 + 1 + + + Back + + + 0 + 75 + 20dB + filter + volume + volume + volume + 1 + + + 0,04 + + + 0 + 75 + 20dB + filter + volume + fadeout + volume + 2 + 1 + 0 + + + + + 0 + 75 + 20dB + filter + volume + fadein + volume + 3 + 0 + 1 + + + + + + + + + + + 1 + 2 + transition + mix + 1 + 1 + 237 + + + 1 + 2 + transition + mix + 1 + 237 + 1 + + + 1 + 2 + transition + mix + 1 + 237 + 1 + + + 1 + 2 + transition + mix + 1 + 237 + 1 + + + 1 + 2 + transition + mix + 1 + 237 + 1 + + + 1 + 2 + transition + mix + 1 + 237 + 1 + + + 1 + 2 + transition + mix + 1 + 237 + 1 + + + 1 + 3 + transition + mix + 1 + 237 + 1 + + + 1 + 3 + transition + mix + 1 + 237 + 1 + + + 1 + 2 + transition + mix + 1 + 1 + 237 + + + 1 + 3 + transition + mix + 1 + 1 + 237 + + + 0 + 1 + transition + mix + 1 + 1 + 237 + + + 0 + 2 + transition + mix + 1 + 1 + 237 + + + 0 + 3 + transition + mix + 1 + 1 + 237 + + + diff --git a/tools/intro-video/img/01-title.png b/tools/intro-video/img/01-title.png new file mode 100644 index 0000000000000000000000000000000000000000..df0a7dec9af36f609435ba6f3506871e71a553e0 GIT binary patch literal 289548 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

R2ni#tr?3yofc*_TNZX!8&EK> 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ⅆ)c&H^@>=Kpry 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%0ANh+$k{M0`o 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�@vUx<5R1^exrPu5|MqWaS2y>)m(0Vb> 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

Rh~yltfL&^rPoA6`CTOb5F*<4Gr~M(*U^VW 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�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 ` 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 literal 0 HcmV?d00001 From c725dc9fb6f103fd7e2f8a037d333bececd17e4a Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 15 Nov 2015 02:01:23 +0600 Subject: [PATCH 20/22] Add intro-video link --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index d644b9c8..e9fe9eda 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,8 @@ We didn't invent anything new — all this has been already invented in 19th cen > If you like the plugin, feel free to [donate via PayPal](https://goo.gl/igulor) or rate it (on the right side of this page). Thanks a lot! :) +http://www.youtube.com/watch?v=tT3d8Jdm7kY + Test answers, scales, results and categories are edited through **wordpress standard editors**, similar to categories editor. You can associate them in sidebar. Whether test questions, answers and formulas are edited with standard wordpress metaboxes, behind content. You can even reorder them if you like by drag-n-drop. At the top of content editor you have **button for quick access** to those metaboxes: Add New Questions, Edit Questions and Scores, Edit Formulas. If you want more control then you are allowed to add to them not allowed out-of-the box HTML tags like: headers, lists, images, hr and "read more" tag taken from post editor. **Answers** can be global to test — when all questions have the same answers. For example: "Yes", "No", "I'm not sure". Or you can use **individual answers** to add individual answer to each question. And the third option is to use global answers, but individualize their titles: not just "Yes", but "Yes, I do so and so", when you use it for the particular question. Some tests have this pattern. From 7cebe04226cd1e4345bab727d8db4094a299cf30 Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 15 Nov 2015 02:16:36 +0600 Subject: [PATCH 21/22] Update tags --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index e9fe9eda..289ef03b 100644 --- a/README.md +++ b/README.md @@ -118,11 +118,11 @@ Sorry, I dont' have too much time for custom paid development. WordPress as plat Most giant are **[feature](https://wordpress.org/tags/wp-testing-feature)**, **[bug](https://wordpress.org/tags/wp-testing-bug)** and **[support](https://wordpress.org/tags/wp-testing-support)**. Other are groupped under them. -**Feature**: [alert required questions](https://wordpress.org/tags/wp-testing-alert-required-questions), [answer rate](https://wordpress.org/tags/wp-testing-answer-rate), [answer type number](https://wordpress.org/tags/wp-testing-answer-type-number), [author](https://wordpress.org/tags/wp-testing-author), [chained steps strategy](https://wordpress.org/tags/wp-testing-chained-steps-strategy), [conflict plugin](https://wordpress.org/tags/wp-testing-conflict-plugin), [custom template](https://wordpress.org/tags/wp-testing-custom-template), [diagram settings](https://wordpress.org/tags/wp-testing-diagram-settings), [diagram type](https://wordpress.org/tags/wp-testing-diagram-type), **[email results](https://wordpress.org/tags/wp-testing-email-results)**, [export import tests](https://wordpress.org/tags/wp-testing-export-import-tests), **[export results](https://wordpress.org/tags/wp-testing-export-results)**, [for users](https://wordpress.org/tags/wp-testing-for-users), [formula absolute](https://wordpress.org/tags/wp-testing-formula-absolute), [formula division](https://wordpress.org/tags/wp-testing-formula-division), [formula not](https://wordpress.org/tags/wp-testing-formula-not), **[hide scales](https://wordpress.org/tags/wp-testing-hide-scales)**, [hide test description](https://wordpress.org/tags/wp-testing-hide-test-description), [individual answers](https://wordpress.org/tags/wp-testing-individual-answers), **[low memory](https://wordpress.org/tags/wp-testing-low-memory)**, [multiline questions](https://wordpress.org/tags/wp-testing-multiline-questions), [multiple answers](https://wordpress.org/tags/wp-testing-multiple-answers), [negative scales sum](https://wordpress.org/tags/wp-testing-negative-scales-sum), [paid results](https://wordpress.org/tags/wp-testing-paid-results), [paid test](https://wordpress.org/tags/wp-testing-paid-test), [passing counter](https://wordpress.org/tags/wp-testing-passing-counter), [pdf results](https://wordpress.org/tags/wp-testing-pdf-results), [postprocess results](https://wordpress.org/tags/wp-testing-postprocess-results), [public scale names](https://wordpress.org/tags/wp-testing-public-scale-names), [publish homepage](https://wordpress.org/tags/wp-testing-publish-homepage), [question per page](https://wordpress.org/tags/wp-testing-question-per-page), [random question answer order](https://wordpress.org/tags/wp-testing-random-question-answer-order), [redirect](https://wordpress.org/tags/wp-testing-redirect), [reorder questions](https://wordpress.org/tags/wp-testing-reorder-questions), [reorder scales results answers](https://wordpress.org/tags/wp-testing-reorder-scales-results-answers), **[respondents results](https://wordpress.org/tags/wp-testing-respondents-results)**, **[results page](https://wordpress.org/tags/wp-testing-results-page)**, **[rich scales results](https://wordpress.org/tags/wp-testing-rich-scales-results)**, [scale bar orientation](https://wordpress.org/tags/wp-testing-scale-bar-orientation), **[scores decimal](https://wordpress.org/tags/wp-testing-scores-decimal)**, [sections](https://wordpress.org/tags/wp-testing-sections), [share results](https://wordpress.org/tags/wp-testing-share-results), **[shortcode](https://wordpress.org/tags/wp-testing-shortcode)**, [sort results](https://wordpress.org/tags/wp-testing-sort-results), [sort scales](https://wordpress.org/tags/wp-testing-sort-scales), **[styling](https://wordpress.org/tags/wp-testing-styling)**, [test page answers](https://wordpress.org/tags/wp-testing-test-page-answers), [time limit](https://wordpress.org/tags/wp-testing-time-limit), [use post category](https://wordpress.org/tags/wp-testing-use-post-category), [user to results](https://wordpress.org/tags/wp-testing-user-to-results), [variable question answer](https://wordpress.org/tags/wp-testing-variable-question-answer). +**Feature**: [alert required questions](https://wordpress.org/tags/wp-testing-alert-required-questions), [answer rate](https://wordpress.org/tags/wp-testing-answer-rate), [answer type number](https://wordpress.org/tags/wp-testing-answer-type-number), [author](https://wordpress.org/tags/wp-testing-author), [chained steps strategy](https://wordpress.org/tags/wp-testing-chained-steps-strategy), [conflict plugin](https://wordpress.org/tags/wp-testing-conflict-plugin), [custom template](https://wordpress.org/tags/wp-testing-custom-template), [diagram settings](https://wordpress.org/tags/wp-testing-diagram-settings), **[diagram type](https://wordpress.org/tags/wp-testing-diagram-type)**, **[email results](https://wordpress.org/tags/wp-testing-email-results)**, [export import tests](https://wordpress.org/tags/wp-testing-export-import-tests), **[export results](https://wordpress.org/tags/wp-testing-export-results)**, [for users](https://wordpress.org/tags/wp-testing-for-users), [formula absolute](https://wordpress.org/tags/wp-testing-formula-absolute), [formula division](https://wordpress.org/tags/wp-testing-formula-division), [formula not](https://wordpress.org/tags/wp-testing-formula-not), [hide scales](https://wordpress.org/tags/wp-testing-hide-scales), [hide test description](https://wordpress.org/tags/wp-testing-hide-test-description), [individual answers](https://wordpress.org/tags/wp-testing-individual-answers), **[low memory](https://wordpress.org/tags/wp-testing-low-memory)**, [multiline questions](https://wordpress.org/tags/wp-testing-multiline-questions), [multiple answers](https://wordpress.org/tags/wp-testing-multiple-answers), [negative scales sum](https://wordpress.org/tags/wp-testing-negative-scales-sum), [paid results](https://wordpress.org/tags/wp-testing-paid-results), [paid test](https://wordpress.org/tags/wp-testing-paid-test), [passing counter](https://wordpress.org/tags/wp-testing-passing-counter), [pdf results](https://wordpress.org/tags/wp-testing-pdf-results), [postprocess results](https://wordpress.org/tags/wp-testing-postprocess-results), [public scale names](https://wordpress.org/tags/wp-testing-public-scale-names), [publish homepage](https://wordpress.org/tags/wp-testing-publish-homepage), [question per page](https://wordpress.org/tags/wp-testing-question-per-page), [random question answer order](https://wordpress.org/tags/wp-testing-random-question-answer-order), [redirect](https://wordpress.org/tags/wp-testing-redirect), [reorder questions](https://wordpress.org/tags/wp-testing-reorder-questions), [reorder scales results answers](https://wordpress.org/tags/wp-testing-reorder-scales-results-answers), **[respondents results](https://wordpress.org/tags/wp-testing-respondents-results)**, **[results page](https://wordpress.org/tags/wp-testing-results-page)**, [rich scales results](https://wordpress.org/tags/wp-testing-rich-scales-results), [scale bar orientation](https://wordpress.org/tags/wp-testing-scale-bar-orientation), **[scores decimal](https://wordpress.org/tags/wp-testing-scores-decimal)**, [sections](https://wordpress.org/tags/wp-testing-sections), [share results](https://wordpress.org/tags/wp-testing-share-results), **[shortcode](https://wordpress.org/tags/wp-testing-shortcode)**, [sort results](https://wordpress.org/tags/wp-testing-sort-results), [sort scales](https://wordpress.org/tags/wp-testing-sort-scales), **[styling](https://wordpress.org/tags/wp-testing-styling)**, **[test page answers](https://wordpress.org/tags/wp-testing-test-page-answers)**, [time limit](https://wordpress.org/tags/wp-testing-time-limit), [use post category](https://wordpress.org/tags/wp-testing-use-post-category), [user to results](https://wordpress.org/tags/wp-testing-user-to-results), [variable question answer](https://wordpress.org/tags/wp-testing-variable-question-answer). -**Bug**: [answer order](https://wordpress.org/tags/wp-testing-answer-order), [answers disappears](https://wordpress.org/tags/wp-testing-answers-disappears), [apostrophe](https://wordpress.org/tags/wp-testing-apostrophe), **[conflict plugin](https://wordpress.org/tags/wp-testing-conflict-plugin)**, **[conflict theme](https://wordpress.org/tags/wp-testing-conflict-theme)**, [cpu limit](https://wordpress.org/tags/wp-testing-cpu-limit), **[database collation](https://wordpress.org/tags/wp-testing-database-collation)**, [database engine](https://wordpress.org/tags/wp-testing-database-engine), [database old password format](https://wordpress.org/tags/wp-testing-database-old-password-format), [database prefix case](https://wordpress.org/tags/wp-testing-database-prefix-case), [form multipart](https://wordpress.org/tags/wp-testing-form-multipart), [formulas](https://wordpress.org/tags/wp-testing-formulas), [individual answers](https://wordpress.org/tags/wp-testing-individual-answers), **[migration](https://wordpress.org/tags/wp-testing-migration)**, [minimal score](https://wordpress.org/tags/wp-testing-minimal-score), [missing mysqli](https://wordpress.org/tags/wp-testing-missing-mysqli), [missing tokenizer](https://wordpress.org/tags/wp-testing-missing-tokenizer), [multiple answers](https://wordpress.org/tags/wp-testing-multiple-answers), [multisite](https://wordpress.org/tags/wp-testing-multisite), [page 404](https://wordpress.org/tags/wp-testing-page-404), [php strict](https://wordpress.org/tags/wp-testing-php-strict), [test description limited](https://wordpress.org/tags/wp-testing-test-description-limited), [uninstall](https://wordpress.org/tags/wp-testing-uninstall), [value names required](https://wordpress.org/tags/wp-testing-value-names-required), **[virus](https://wordpress.org/tags/wp-testing-virus)**. +**Bug**: [answer order](https://wordpress.org/tags/wp-testing-answer-order), [answers disappears](https://wordpress.org/tags/wp-testing-answers-disappears), [apostrophe](https://wordpress.org/tags/wp-testing-apostrophe), **[conflict plugin](https://wordpress.org/tags/wp-testing-conflict-plugin)**, **[conflict theme](https://wordpress.org/tags/wp-testing-conflict-theme)**, [cpu limit](https://wordpress.org/tags/wp-testing-cpu-limit), **[database collation](https://wordpress.org/tags/wp-testing-database-collation)**, [database engine](https://wordpress.org/tags/wp-testing-database-engine), [database old password format](https://wordpress.org/tags/wp-testing-database-old-password-format), [database prefix case](https://wordpress.org/tags/wp-testing-database-prefix-case), [form multipart](https://wordpress.org/tags/wp-testing-form-multipart), [formulas](https://wordpress.org/tags/wp-testing-formulas), [individual answers](https://wordpress.org/tags/wp-testing-individual-answers), **[migration](https://wordpress.org/tags/wp-testing-migration)**, [minimal score](https://wordpress.org/tags/wp-testing-minimal-score), [missing mysqli](https://wordpress.org/tags/wp-testing-missing-mysqli), [missing tokenizer](https://wordpress.org/tags/wp-testing-missing-tokenizer), [multiple answers](https://wordpress.org/tags/wp-testing-multiple-answers), [multisite](https://wordpress.org/tags/wp-testing-multisite), [page 404](https://wordpress.org/tags/wp-testing-page-404), [php strict](https://wordpress.org/tags/wp-testing-php-strict), [roles](https://wordpress.org/tags/wp-testing-roles), [shortcode](https://wordpress.org/tags/wp-testing-shortcode), [test description limited](https://wordpress.org/tags/wp-testing-test-description-limited), [uninstall](https://wordpress.org/tags/wp-testing-uninstall), [value names required](https://wordpress.org/tags/wp-testing-value-names-required), **[virus](https://wordpress.org/tags/wp-testing-virus)**. -**Support**: [conflict plugin](https://wordpress.org/tags/wp-testing-conflict-plugin), **[conflict theme](https://wordpress.org/tags/wp-testing-conflict-theme)**, [database config](https://wordpress.org/tags/wp-testing-database-config), [demo](https://wordpress.org/tags/wp-testing-demo), [fields](https://wordpress.org/tags/wp-testing-fields), **[formula misprint](https://wordpress.org/tags/wp-testing-formula-misprint)**, [individual answers](https://wordpress.org/tags/wp-testing-individual-answers), [migration](https://wordpress.org/tags/wp-testing-migration), [missing mysqli](https://wordpress.org/tags/wp-testing-missing-mysqli), [more example tests for free](https://wordpress.org/tags/wp-testing-more-example-tests-for-free), [multisite](https://wordpress.org/tags/wp-testing-multisite), [not reproduced](https://wordpress.org/tags/wp-testing-not-reproduced), [reorder scales results answers](https://wordpress.org/tags/wp-testing-reorder-scales-results-answers), **[results page](https://wordpress.org/tags/wp-testing-results-page)**, [scores](https://wordpress.org/tags/wp-testing-scores), [skip question](https://wordpress.org/tags/wp-testing-skip-question), **[styling](https://wordpress.org/tags/wp-testing-styling)**, [theme customizing](https://wordpress.org/tags/wp-testing-theme-customizing), [translation](https://wordpress.org/tags/wp-testing-translation), [upgrade](https://wordpress.org/tags/wp-testing-upgrade). +**Support**: [access](https://wordpress.org/tags/wp-testing-access), [conflict plugin](https://wordpress.org/tags/wp-testing-conflict-plugin), **[conflict theme](https://wordpress.org/tags/wp-testing-conflict-theme)**, [custom template](https://wordpress.org/tags/wp-testing-custom-template), [database config](https://wordpress.org/tags/wp-testing-database-config), [demo](https://wordpress.org/tags/wp-testing-demo), [dispute](https://wordpress.org/tags/wp-testing-dispute), [export import tests](https://wordpress.org/tags/wp-testing-export-import-tests), [fields](https://wordpress.org/tags/wp-testing-fields), **[formula misprint](https://wordpress.org/tags/wp-testing-formula-misprint)**, [formulas](https://wordpress.org/tags/wp-testing-formulas), [individual answers](https://wordpress.org/tags/wp-testing-individual-answers), [migration](https://wordpress.org/tags/wp-testing-migration), [missing mysqli](https://wordpress.org/tags/wp-testing-missing-mysqli), [more example tests for free](https://wordpress.org/tags/wp-testing-more-example-tests-for-free), [multisite](https://wordpress.org/tags/wp-testing-multisite), [non actual](https://wordpress.org/tags/wp-testing-non-actual), [not reproduced](https://wordpress.org/tags/wp-testing-not-reproduced), [reorder scales results answers](https://wordpress.org/tags/wp-testing-reorder-scales-results-answers), **[results page](https://wordpress.org/tags/wp-testing-results-page)**, **[scores](https://wordpress.org/tags/wp-testing-scores)**, [server error 503](https://wordpress.org/tags/wp-testing-server-error-503), **[shortcode](https://wordpress.org/tags/wp-testing-shortcode)**, [skip question](https://wordpress.org/tags/wp-testing-skip-question), **[styling](https://wordpress.org/tags/wp-testing-styling)**, [theme customizing](https://wordpress.org/tags/wp-testing-theme-customizing), [translation](https://wordpress.org/tags/wp-testing-translation), [upgrade](https://wordpress.org/tags/wp-testing-upgrade). **Other**: [addon](https://wordpress.org/tags/wp-testing-addon), [changelog](https://wordpress.org/tags/wp-testing-changelog), [fix me for free](https://wordpress.org/tags/wp-testing-fix-me-for-free), [manual](https://wordpress.org/tags/wp-testing-manual), [reward](https://wordpress.org/tags/wp-testing-reward), **[translation](https://wordpress.org/tags/wp-testing-translation)**, [upgrade](https://wordpress.org/tags/wp-testing-upgrade). From 302d289f1a60b7e1713a6371e4138d5013b0c60f Mon Sep 17 00:00:00 2001 From: Ustimenko Alexander Date: Sun, 15 Nov 2015 02:21:07 +0600 Subject: [PATCH 22/22] Describe release in changelog and bump version to 0.17.2 --- CHANGELOG.md | 12 ++++++++++++ README.md | 2 +- wp-testing.php | 2 +- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e0291037..058b61bb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,18 @@ ## Changelog ## +### 0.17.2 ### + +Internal improvements and intro-video + +Add intro-video with plugin description, howto concepts and explanations: http://www.youtube.com/watch?v=tT3d8Jdm7kY + +Internal improvements: + +* Improve code quality and avoid duplicates +* Improve test rendering + + ### 0.17.1 ### Fix incorrect content processing diff --git a/README.md b/README.md index 289ef03b..aedc4f08 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ **Tags:** psychological, testing, test, quiz **Requires at least:** 3.2 **Tested up to:** 4.3.1 -**Stable tag:** 0.17.1 +**Stable tag:** 0.17.2 **License:** GPLv3 **License URI:** http://www.gnu.org/licenses/gpl-3.0.html diff --git a/wp-testing.php b/wp-testing.php index 6e600f00..90bce39f 100644 --- a/wp-testing.php +++ b/wp-testing.php @@ -3,7 +3,7 @@ * Plugin Name: Wp-testing * Plugin URI: http://wordpress.org/extend/plugins/wp-testing/ * Description: Helps to create psychological tests. - * Version: 0.17.1 + * Version: 0.17.2 * Author: Alexander Ustimenko * Author URI: http://ustimen.co * License: GPL3