-- phpMyAdmin SQL Dump
-- version 4.2.5
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Jun 01, 2015 at 09:30 AM
-- Server version: 5.5.41-0+wheezy1
-- PHP Version: 5.4.36-0+deb7u3

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Database: `wi_project_site`
--

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_actiondom`
--

CREATE TABLE IF NOT EXISTS `modx_access_actiondom` (
`id` int(10) unsigned NOT NULL,
  `target` varchar(100) NOT NULL DEFAULT '',
  `principal_class` varchar(100) NOT NULL DEFAULT 'modPrincipal',
  `principal` int(10) unsigned NOT NULL DEFAULT '0',
  `authority` int(10) unsigned NOT NULL DEFAULT '9999',
  `policy` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_actions`
--

CREATE TABLE IF NOT EXISTS `modx_access_actions` (
`id` int(10) unsigned NOT NULL,
  `target` varchar(100) NOT NULL DEFAULT '',
  `principal_class` varchar(100) NOT NULL DEFAULT 'modPrincipal',
  `principal` int(10) unsigned NOT NULL DEFAULT '0',
  `authority` int(10) unsigned NOT NULL DEFAULT '9999',
  `policy` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_category`
--

CREATE TABLE IF NOT EXISTS `modx_access_category` (
`id` int(10) unsigned NOT NULL,
  `target` varchar(100) NOT NULL DEFAULT '',
  `principal_class` varchar(100) NOT NULL DEFAULT 'modPrincipal',
  `principal` int(10) unsigned NOT NULL DEFAULT '0',
  `authority` int(10) unsigned NOT NULL DEFAULT '9999',
  `policy` int(10) unsigned NOT NULL DEFAULT '0',
  `context_key` varchar(100) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_context`
--

CREATE TABLE IF NOT EXISTS `modx_access_context` (
`id` int(10) unsigned NOT NULL,
  `target` varchar(100) NOT NULL DEFAULT '',
  `principal_class` varchar(100) NOT NULL DEFAULT 'modPrincipal',
  `principal` int(10) unsigned NOT NULL DEFAULT '0',
  `authority` int(10) unsigned NOT NULL DEFAULT '9999',
  `policy` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;

--
-- Dumping data for table `modx_access_context`
--

INSERT INTO `modx_access_context` (`id`, `target`, `principal_class`, `principal`, `authority`, `policy`) VALUES
(1, 'web', 'modUserGroup', 0, 9999, 3),
(2, 'mgr', 'modUserGroup', 1, 0, 2),
(3, 'web', 'modUserGroup', 1, 0, 2),
(4, 'mgr', 'modUserGroup', 1, 9999, 12);

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_elements`
--

CREATE TABLE IF NOT EXISTS `modx_access_elements` (
`id` int(10) unsigned NOT NULL,
  `target` varchar(100) NOT NULL DEFAULT '',
  `principal_class` varchar(100) NOT NULL DEFAULT 'modPrincipal',
  `principal` int(10) unsigned NOT NULL DEFAULT '0',
  `authority` int(10) unsigned NOT NULL DEFAULT '9999',
  `policy` int(10) unsigned NOT NULL DEFAULT '0',
  `context_key` varchar(100) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_media_source`
--

CREATE TABLE IF NOT EXISTS `modx_access_media_source` (
`id` int(10) unsigned NOT NULL,
  `target` varchar(100) NOT NULL DEFAULT '',
  `principal_class` varchar(100) NOT NULL DEFAULT 'modPrincipal',
  `principal` int(10) unsigned NOT NULL DEFAULT '0',
  `authority` int(10) unsigned NOT NULL DEFAULT '9999',
  `policy` int(10) unsigned NOT NULL DEFAULT '0',
  `context_key` varchar(100) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_menus`
--

CREATE TABLE IF NOT EXISTS `modx_access_menus` (
`id` int(10) unsigned NOT NULL,
  `target` varchar(100) NOT NULL DEFAULT '',
  `principal_class` varchar(100) NOT NULL DEFAULT 'modPrincipal',
  `principal` int(10) unsigned NOT NULL DEFAULT '0',
  `authority` int(10) unsigned NOT NULL DEFAULT '9999',
  `policy` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_permissions`
--

CREATE TABLE IF NOT EXISTS `modx_access_permissions` (
`id` int(10) unsigned NOT NULL,
  `template` int(10) unsigned NOT NULL DEFAULT '0',
  `name` varchar(255) NOT NULL DEFAULT '',
  `description` text NOT NULL,
  `value` tinyint(1) unsigned NOT NULL DEFAULT '1'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=218 ;

--
-- Dumping data for table `modx_access_permissions`
--

INSERT INTO `modx_access_permissions` (`id`, `template`, `name`, `description`, `value`) VALUES
(1, 1, 'about', 'perm.about_desc', 1),
(2, 1, 'access_permissions', 'perm.access_permissions_desc', 1),
(3, 1, 'actions', 'perm.actions_desc', 1),
(4, 1, 'change_password', 'perm.change_password_desc', 1),
(5, 1, 'change_profile', 'perm.change_profile_desc', 1),
(6, 1, 'charsets', 'perm.charsets_desc', 1),
(7, 1, 'class_map', 'perm.class_map_desc', 1),
(8, 1, 'components', 'perm.components_desc', 1),
(9, 1, 'content_types', 'perm.content_types_desc', 1),
(10, 1, 'countries', 'perm.countries_desc', 1),
(11, 1, 'create', 'perm.create_desc', 1),
(12, 1, 'credits', 'perm.credits_desc', 1),
(13, 1, 'customize_forms', 'perm.customize_forms_desc', 1),
(14, 1, 'dashboards', 'perm.dashboards_desc', 1),
(15, 1, 'database', 'perm.database_desc', 1),
(16, 1, 'database_truncate', 'perm.database_truncate_desc', 1),
(17, 1, 'delete_category', 'perm.delete_category_desc', 1),
(18, 1, 'delete_chunk', 'perm.delete_chunk_desc', 1),
(19, 1, 'delete_context', 'perm.delete_context_desc', 1),
(20, 1, 'delete_document', 'perm.delete_document_desc', 1),
(21, 1, 'delete_eventlog', 'perm.delete_eventlog_desc', 1),
(22, 1, 'delete_plugin', 'perm.delete_plugin_desc', 1),
(23, 1, 'delete_propertyset', 'perm.delete_propertyset_desc', 1),
(24, 1, 'delete_snippet', 'perm.delete_snippet_desc', 1),
(25, 1, 'delete_template', 'perm.delete_template_desc', 1),
(26, 1, 'delete_tv', 'perm.delete_tv_desc', 1),
(27, 1, 'delete_role', 'perm.delete_role_desc', 1),
(28, 1, 'delete_user', 'perm.delete_user_desc', 1),
(29, 1, 'directory_chmod', 'perm.directory_chmod_desc', 1),
(30, 1, 'directory_create', 'perm.directory_create_desc', 1),
(31, 1, 'directory_list', 'perm.directory_list_desc', 1),
(32, 1, 'directory_remove', 'perm.directory_remove_desc', 1),
(33, 1, 'directory_update', 'perm.directory_update_desc', 1),
(34, 1, 'edit_category', 'perm.edit_category_desc', 1),
(35, 1, 'edit_chunk', 'perm.edit_chunk_desc', 1),
(36, 1, 'edit_context', 'perm.edit_context_desc', 1),
(37, 1, 'edit_document', 'perm.edit_document_desc', 1),
(38, 1, 'edit_locked', 'perm.edit_locked_desc', 1),
(39, 1, 'edit_plugin', 'perm.edit_plugin_desc', 1),
(40, 1, 'edit_propertyset', 'perm.edit_propertyset_desc', 1),
(41, 1, 'edit_role', 'perm.edit_role_desc', 1),
(42, 1, 'edit_snippet', 'perm.edit_snippet_desc', 1),
(43, 1, 'edit_template', 'perm.edit_template_desc', 1),
(44, 1, 'edit_tv', 'perm.edit_tv_desc', 1),
(45, 1, 'edit_user', 'perm.edit_user_desc', 1),
(46, 1, 'element_tree', 'perm.element_tree_desc', 1),
(47, 1, 'empty_cache', 'perm.empty_cache_desc', 1),
(48, 1, 'error_log_erase', 'perm.error_log_erase_desc', 1),
(49, 1, 'error_log_view', 'perm.error_log_view_desc', 1),
(50, 1, 'export_static', 'perm.export_static_desc', 1),
(51, 1, 'file_create', 'perm.file_create_desc', 1),
(52, 1, 'file_list', 'perm.file_list_desc', 1),
(53, 1, 'file_manager', 'perm.file_manager_desc', 1),
(54, 1, 'file_remove', 'perm.file_remove_desc', 1),
(55, 1, 'file_tree', 'perm.file_tree_desc', 1),
(56, 1, 'file_update', 'perm.file_update_desc', 1),
(57, 1, 'file_upload', 'perm.file_upload_desc', 1),
(58, 1, 'file_view', 'perm.file_view_desc', 1),
(59, 1, 'flush_sessions', 'perm.flush_sessions_desc', 1),
(60, 1, 'frames', 'perm.frames_desc', 1),
(61, 1, 'help', 'perm.help_desc', 1),
(62, 1, 'home', 'perm.home_desc', 1),
(63, 1, 'import_static', 'perm.import_static_desc', 1),
(64, 1, 'languages', 'perm.languages_desc', 1),
(65, 1, 'lexicons', 'perm.lexicons_desc', 1),
(66, 1, 'list', 'perm.list_desc', 1),
(67, 1, 'load', 'perm.load_desc', 1),
(68, 1, 'logout', 'perm.logout_desc', 1),
(69, 1, 'logs', 'perm.logs_desc', 1),
(70, 1, 'menu_reports', 'perm.menu_reports_desc', 1),
(71, 1, 'menu_security', 'perm.menu_security_desc', 1),
(72, 1, 'menu_site', 'perm.menu_site_desc', 1),
(73, 1, 'menu_support', 'perm.menu_support_desc', 1),
(74, 1, 'menu_system', 'perm.menu_system_desc', 1),
(75, 1, 'menu_tools', 'perm.menu_tools_desc', 1),
(76, 1, 'menu_user', 'perm.menu_user_desc', 1),
(77, 1, 'menus', 'perm.menus_desc', 1),
(78, 1, 'messages', 'perm.messages_desc', 1),
(79, 1, 'namespaces', 'perm.namespaces_desc', 1),
(80, 1, 'new_category', 'perm.new_category_desc', 1),
(81, 1, 'new_chunk', 'perm.new_chunk_desc', 1),
(82, 1, 'new_context', 'perm.new_context_desc', 1),
(83, 1, 'new_document', 'perm.new_document_desc', 1),
(84, 1, 'new_static_resource', 'perm.new_static_resource_desc', 1),
(85, 1, 'new_symlink', 'perm.new_symlink_desc', 1),
(86, 1, 'new_weblink', 'perm.new_weblink_desc', 1),
(87, 1, 'new_document_in_root', 'perm.new_document_in_root_desc', 1),
(88, 1, 'new_plugin', 'perm.new_plugin_desc', 1),
(89, 1, 'new_propertyset', 'perm.new_propertyset_desc', 1),
(90, 1, 'new_role', 'perm.new_role_desc', 1),
(91, 1, 'new_snippet', 'perm.new_snippet_desc', 1),
(92, 1, 'new_template', 'perm.new_template_desc', 1),
(93, 1, 'new_tv', 'perm.new_tv_desc', 1),
(94, 1, 'new_user', 'perm.new_user_desc', 1),
(95, 1, 'packages', 'perm.packages_desc', 1),
(96, 1, 'policy_delete', 'perm.policy_delete_desc', 1),
(97, 1, 'policy_edit', 'perm.policy_edit_desc', 1),
(98, 1, 'policy_new', 'perm.policy_new_desc', 1),
(99, 1, 'policy_save', 'perm.policy_save_desc', 1),
(100, 1, 'policy_view', 'perm.policy_view_desc', 1),
(101, 1, 'policy_template_delete', 'perm.policy_template_delete_desc', 1),
(102, 1, 'policy_template_edit', 'perm.policy_template_edit_desc', 1),
(103, 1, 'policy_template_new', 'perm.policy_template_new_desc', 1),
(104, 1, 'policy_template_save', 'perm.policy_template_save_desc', 1),
(105, 1, 'policy_template_view', 'perm.policy_template_view_desc', 1),
(106, 1, 'property_sets', 'perm.property_sets_desc', 1),
(107, 1, 'providers', 'perm.providers_desc', 1),
(108, 1, 'publish_document', 'perm.publish_document_desc', 1),
(109, 1, 'purge_deleted', 'perm.purge_deleted_desc', 1),
(110, 1, 'remove', 'perm.remove_desc', 1),
(111, 1, 'remove_locks', 'perm.remove_locks_desc', 1),
(112, 1, 'resource_duplicate', 'perm.resource_duplicate_desc', 1),
(113, 1, 'resourcegroup_delete', 'perm.resourcegroup_delete_desc', 1),
(114, 1, 'resourcegroup_edit', 'perm.resourcegroup_edit_desc', 1),
(115, 1, 'resourcegroup_new', 'perm.resourcegroup_new_desc', 1),
(116, 1, 'resourcegroup_resource_edit', 'perm.resourcegroup_resource_edit_desc', 1),
(117, 1, 'resourcegroup_resource_list', 'perm.resourcegroup_resource_list_desc', 1),
(118, 1, 'resourcegroup_save', 'perm.resourcegroup_save_desc', 1),
(119, 1, 'resourcegroup_view', 'perm.resourcegroup_view_desc', 1),
(120, 1, 'resource_quick_create', 'perm.resource_quick_create_desc', 1),
(121, 1, 'resource_quick_update', 'perm.resource_quick_update_desc', 1),
(122, 1, 'resource_tree', 'perm.resource_tree_desc', 1),
(123, 1, 'save', 'perm.save_desc', 1),
(124, 1, 'save_category', 'perm.save_category_desc', 1),
(125, 1, 'save_chunk', 'perm.save_chunk_desc', 1),
(126, 1, 'save_context', 'perm.save_context_desc', 1),
(127, 1, 'save_document', 'perm.save_document_desc', 1),
(128, 1, 'save_plugin', 'perm.save_plugin_desc', 1),
(129, 1, 'save_propertyset', 'perm.save_propertyset_desc', 1),
(130, 1, 'save_role', 'perm.save_role_desc', 1),
(131, 1, 'save_snippet', 'perm.save_snippet_desc', 1),
(132, 1, 'save_template', 'perm.save_template_desc', 1),
(133, 1, 'save_tv', 'perm.save_tv_desc', 1),
(134, 1, 'save_user', 'perm.save_user_desc', 1),
(135, 1, 'search', 'perm.search_desc', 1),
(136, 1, 'settings', 'perm.settings_desc', 1),
(137, 1, 'source_save', 'perm.source_save_desc', 1),
(138, 1, 'source_delete', 'perm.source_delete_desc', 1),
(139, 1, 'source_edit', 'perm.source_edit_desc', 1),
(140, 1, 'source_view', 'perm.source_view_desc', 1),
(141, 1, 'sources', 'perm.sources_desc', 1),
(142, 1, 'steal_locks', 'perm.steal_locks_desc', 1),
(143, 1, 'tree_show_element_ids', 'perm.tree_show_element_ids_desc', 1),
(144, 1, 'tree_show_resource_ids', 'perm.tree_show_resource_ids_desc', 1),
(145, 1, 'undelete_document', 'perm.undelete_document_desc', 1),
(146, 1, 'unpublish_document', 'perm.unpublish_document_desc', 1),
(147, 1, 'unlock_element_properties', 'perm.unlock_element_properties_desc', 1),
(148, 1, 'usergroup_delete', 'perm.usergroup_delete_desc', 1),
(149, 1, 'usergroup_edit', 'perm.usergroup_edit_desc', 1),
(150, 1, 'usergroup_new', 'perm.usergroup_new_desc', 1),
(151, 1, 'usergroup_save', 'perm.usergroup_save_desc', 1),
(152, 1, 'usergroup_user_edit', 'perm.usergroup_user_edit_desc', 1),
(153, 1, 'usergroup_user_list', 'perm.usergroup_user_list_desc', 1),
(154, 1, 'usergroup_view', 'perm.usergroup_view_desc', 1),
(155, 1, 'view', 'perm.view_desc', 1),
(156, 1, 'view_category', 'perm.view_category_desc', 1),
(157, 1, 'view_chunk', 'perm.view_chunk_desc', 1),
(158, 1, 'view_context', 'perm.view_context_desc', 1),
(159, 1, 'view_document', 'perm.view_document_desc', 1),
(160, 1, 'view_element', 'perm.view_element_desc', 1),
(161, 1, 'view_eventlog', 'perm.view_eventlog_desc', 1),
(162, 1, 'view_offline', 'perm.view_offline_desc', 1),
(163, 1, 'view_plugin', 'perm.view_plugin_desc', 1),
(164, 1, 'view_propertyset', 'perm.view_propertyset_desc', 1),
(165, 1, 'view_role', 'perm.view_role_desc', 1),
(166, 1, 'view_snippet', 'perm.view_snippet_desc', 1),
(167, 1, 'view_sysinfo', 'perm.view_sysinfo_desc', 1),
(168, 1, 'view_template', 'perm.view_template_desc', 1),
(169, 1, 'view_tv', 'perm.view_tv_desc', 1),
(170, 1, 'view_user', 'perm.view_user_desc', 1),
(171, 1, 'view_unpublished', 'perm.view_unpublished_desc', 1),
(172, 1, 'workspaces', 'perm.workspaces_desc', 1),
(173, 2, 'add_children', 'perm.add_children_desc', 1),
(174, 2, 'copy', 'perm.copy_desc', 1),
(175, 2, 'create', 'perm.create_desc', 1),
(176, 2, 'delete', 'perm.delete_desc', 1),
(177, 2, 'list', 'perm.list_desc', 1),
(178, 2, 'load', 'perm.load_desc', 1),
(179, 2, 'move', 'perm.move_desc', 1),
(180, 2, 'publish', 'perm.publish_desc', 1),
(181, 2, 'remove', 'perm.remove_desc', 1),
(182, 2, 'save', 'perm.save_desc', 1),
(183, 2, 'steal_lock', 'perm.steal_lock_desc', 1),
(184, 2, 'undelete', 'perm.undelete_desc', 1),
(185, 2, 'unpublish', 'perm.unpublish_desc', 1),
(186, 2, 'view', 'perm.view_desc', 1),
(187, 3, 'load', 'perm.load_desc', 1),
(188, 3, 'list', 'perm.list_desc', 1),
(189, 3, 'view', 'perm.view_desc', 1),
(190, 3, 'save', 'perm.save_desc', 1),
(191, 3, 'remove', 'perm.remove_desc', 1),
(192, 4, 'add_children', 'perm.add_children_desc', 1),
(193, 4, 'create', 'perm.create_desc', 1),
(194, 4, 'copy', 'perm.copy_desc', 1),
(195, 4, 'delete', 'perm.delete_desc', 1),
(196, 4, 'list', 'perm.list_desc', 1),
(197, 4, 'load', 'perm.load_desc', 1),
(198, 4, 'remove', 'perm.remove_desc', 1),
(199, 4, 'save', 'perm.save_desc', 1),
(200, 4, 'view', 'perm.view_desc', 1),
(201, 5, 'create', 'perm.create_desc', 1),
(202, 5, 'copy', 'perm.copy_desc', 1),
(203, 5, 'list', 'perm.list_desc', 1),
(204, 5, 'load', 'perm.load_desc', 1),
(205, 5, 'remove', 'perm.remove_desc', 1),
(206, 5, 'save', 'perm.save_desc', 1),
(207, 5, 'view', 'perm.view_desc', 1),
(208, 6, 'load', 'perm.load_desc', 1),
(209, 6, 'list', 'perm.list_desc', 1),
(210, 6, 'view', 'perm.view_desc', 1),
(211, 6, 'save', 'perm.save_desc', 1),
(212, 6, 'remove', 'perm.remove_desc', 1),
(213, 6, 'view_unpublished', 'perm.view_unpublished_desc', 1),
(214, 6, 'copy', 'perm.copy_desc', 1),
(215, 7, 'fileattach.totallist', 'perm.fileattach_all', 1),
(216, 7, 'fileattach.doclist', 'perm.fileattach_doc', 1),
(217, 7, 'fileattach.download', 'perm.fileattach_download', 1);

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_policies`
--

CREATE TABLE IF NOT EXISTS `modx_access_policies` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL,
  `description` mediumtext,
  `parent` int(10) unsigned NOT NULL DEFAULT '0',
  `template` int(10) unsigned NOT NULL DEFAULT '0',
  `class` varchar(255) NOT NULL DEFAULT '',
  `data` text,
  `lexicon` varchar(255) NOT NULL DEFAULT 'permissions'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=13 ;

--
-- Dumping data for table `modx_access_policies`
--

INSERT INTO `modx_access_policies` (`id`, `name`, `description`, `parent`, `template`, `class`, `data`, `lexicon`) VALUES
(1, 'Resource', 'MODX Resource Policy with all attributes.', 0, 2, '', '{"add_children":true,"create":true,"copy":true,"delete":true,"list":true,"load":true,"move":true,"publish":true,"remove":true,"save":true,"steal_lock":true,"undelete":true,"unpublish":true,"view":true}', 'permissions'),
(2, 'Administrator', 'Context administration policy with all permissions.', 0, 1, '', '{"about":true,"access_permissions":true,"actions":true,"change_password":true,"change_profile":true,"charsets":true,"class_map":true,"components":true,"content_types":true,"countries":true,"create":true,"credits":true,"customize_forms":true,"dashboards":true,"database":true,"database_truncate":true,"delete_category":true,"delete_chunk":true,"delete_context":true,"delete_document":true,"delete_eventlog":true,"delete_plugin":true,"delete_propertyset":true,"delete_role":true,"delete_snippet":true,"delete_template":true,"delete_tv":true,"delete_user":true,"directory_chmod":true,"directory_create":true,"directory_list":true,"directory_remove":true,"directory_update":true,"edit_category":true,"edit_chunk":true,"edit_context":true,"edit_document":true,"edit_locked":true,"edit_plugin":true,"edit_propertyset":true,"edit_role":true,"edit_snippet":true,"edit_template":true,"edit_tv":true,"edit_user":true,"element_tree":true,"empty_cache":true,"error_log_erase":true,"error_log_view":true,"export_static":true,"file_create":true,"file_list":true,"file_manager":true,"file_remove":true,"file_tree":true,"file_update":true,"file_upload":true,"file_view":true,"flush_sessions":true,"frames":true,"help":true,"home":true,"import_static":true,"languages":true,"lexicons":true,"list":true,"load":true,"logout":true,"logs":true,"menus":true,"menu_reports":true,"menu_security":true,"menu_site":true,"menu_support":true,"menu_system":true,"menu_tools":true,"menu_user":true,"messages":true,"namespaces":true,"new_category":true,"new_chunk":true,"new_context":true,"new_document":true,"new_document_in_root":true,"new_plugin":true,"new_propertyset":true,"new_role":true,"new_snippet":true,"new_static_resource":true,"new_symlink":true,"new_template":true,"new_tv":true,"new_user":true,"new_weblink":true,"packages":true,"policy_delete":true,"policy_edit":true,"policy_new":true,"policy_save":true,"policy_template_delete":true,"policy_template_edit":true,"policy_template_new":true,"policy_template_save":true,"policy_template_view":true,"policy_view":true,"property_sets":true,"providers":true,"publish_document":true,"purge_deleted":true,"remove":true,"remove_locks":true,"resource_duplicate":true,"resourcegroup_delete":true,"resourcegroup_edit":true,"resourcegroup_new":true,"resourcegroup_resource_edit":true,"resourcegroup_resource_list":true,"resourcegroup_save":true,"resourcegroup_view":true,"resource_quick_create":true,"resource_quick_update":true,"resource_tree":true,"save":true,"save_category":true,"save_chunk":true,"save_context":true,"save_document":true,"save_plugin":true,"save_propertyset":true,"save_role":true,"save_snippet":true,"save_template":true,"save_tv":true,"save_user":true,"search":true,"settings":true,"sources":true,"source_delete":true,"source_edit":true,"source_save":true,"source_view":true,"steal_locks":true,"tree_show_element_ids":true,"tree_show_resource_ids":true,"undelete_document":true,"unlock_element_properties":true,"unpublish_document":true,"usergroup_delete":true,"usergroup_edit":true,"usergroup_new":true,"usergroup_save":true,"usergroup_user_edit":true,"usergroup_user_list":true,"usergroup_view":true,"view":true,"view_category":true,"view_chunk":true,"view_context":true,"view_document":true,"view_element":true,"view_eventlog":true,"view_offline":true,"view_plugin":true,"view_propertyset":true,"view_role":true,"view_snippet":true,"view_sysinfo":true,"view_template":true,"view_tv":true,"view_unpublished":true,"view_user":true,"workspaces":true}', 'permissions'),
(3, 'Load Only', 'A minimal policy with permission to load an object.', 0, 3, '', '{"load":true}', 'permissions'),
(4, 'Load, List and View', 'Provides load, list and view permissions only.', 0, 3, '', '{"load":true,"list":true,"view":true}', 'permissions'),
(5, 'Object', 'An Object policy with all permissions.', 0, 3, '', '{"load":true,"list":true,"view":true,"save":true,"remove":true}', 'permissions'),
(6, 'Element', 'MODX Element policy with all attributes.', 0, 4, '', '{"add_children":true,"create":true,"delete":true,"list":true,"load":true,"remove":true,"save":true,"view":true,"copy":true}', 'permissions'),
(7, 'Content Editor', 'Context administration policy with limited, content-editing related Permissions, but no publishing.', 0, 1, '', '{"change_profile":true,"class_map":true,"countries":true,"edit_document":true,"frames":true,"help":true,"home":true,"load":true,"list":true,"logout":true,"menu_reports":true,"menu_site":true,"menu_support":true,"menu_tools":true,"menu_user":true,"resource_duplicate":true,"resource_tree":true,"save_document":true,"source_view":true,"tree_show_resource_ids":true,"view":true,"view_document":true,"new_document":true,"delete_document":true}', 'permissions'),
(8, 'Media Source Admin', 'Media Source administration policy.', 0, 5, '', '{"create":true,"copy":true,"load":true,"list":true,"save":true,"remove":true,"view":true}', 'permissions'),
(9, 'Media Source User', 'Media Source user policy, with basic viewing and using - but no editing - of Media Sources.', 0, 5, '', '{"load":true,"list":true,"view":true}', 'permissions'),
(10, 'Developer', 'Context administration policy with most Permissions except Administrator and Security functions.', 0, 0, '', '{"about":true,"change_password":true,"change_profile":true,"charsets":true,"class_map":true,"components":true,"content_types":true,"countries":true,"create":true,"credits":true,"customize_forms":true,"dashboards":true,"database":true,"delete_category":true,"delete_chunk":true,"delete_context":true,"delete_document":true,"delete_eventlog":true,"delete_plugin":true,"delete_propertyset":true,"delete_snippet":true,"delete_template":true,"delete_tv":true,"delete_role":true,"delete_user":true,"directory_chmod":true,"directory_create":true,"directory_list":true,"directory_remove":true,"directory_update":true,"edit_category":true,"edit_chunk":true,"edit_context":true,"edit_document":true,"edit_locked":true,"edit_plugin":true,"edit_propertyset":true,"edit_role":true,"edit_snippet":true,"edit_template":true,"edit_tv":true,"edit_user":true,"element_tree":true,"empty_cache":true,"error_log_erase":true,"error_log_view":true,"export_static":true,"file_create":true,"file_list":true,"file_manager":true,"file_remove":true,"file_tree":true,"file_update":true,"file_upload":true,"file_view":true,"frames":true,"help":true,"home":true,"import_static":true,"languages":true,"lexicons":true,"list":true,"load":true,"logout":true,"logs":true,"menu_reports":true,"menu_site":true,"menu_support":true,"menu_system":true,"menu_tools":true,"menu_user":true,"menus":true,"messages":true,"namespaces":true,"new_category":true,"new_chunk":true,"new_context":true,"new_document":true,"new_static_resource":true,"new_symlink":true,"new_weblink":true,"new_document_in_root":true,"new_plugin":true,"new_propertyset":true,"new_role":true,"new_snippet":true,"new_template":true,"new_tv":true,"new_user":true,"packages":true,"property_sets":true,"providers":true,"publish_document":true,"purge_deleted":true,"remove":true,"resource_duplicate":true,"resource_quick_create":true,"resource_quick_update":true,"resource_tree":true,"save":true,"save_category":true,"save_chunk":true,"save_context":true,"save_document":true,"save_plugin":true,"save_propertyset":true,"save_snippet":true,"save_template":true,"save_tv":true,"save_user":true,"search":true,"settings":true,"source_delete":true,"source_edit":true,"source_save":true,"source_view":true,"sources":true,"tree_show_element_ids":true,"tree_show_resource_ids":true,"undelete_document":true,"unpublish_document":true,"unlock_element_properties":true,"view":true,"view_category":true,"view_chunk":true,"view_context":true,"view_document":true,"view_element":true,"view_eventlog":true,"view_offline":true,"view_plugin":true,"view_propertyset":true,"view_role":true,"view_snippet":true,"view_sysinfo":true,"view_template":true,"view_tv":true,"view_user":true,"view_unpublished":true,"workspaces":true}', 'permissions'),
(11, 'Context', 'A standard Context policy that you can apply when creating Context ACLs for basic read/write and view_unpublished access within a Context.', 0, 6, '', '{"load":true,"list":true,"view":true,"save":true,"remove":true,"copy":true,"view_unpublished":true}', 'permissions'),
(12, 'File Attach', 'A policy for editing attached files to resources.', 0, 7, '', '{"fileattach.totallist":true,"fileattach.doclist":true,"fileattach.download":true}', 'fileattach:permissions');

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_policy_templates`
--

CREATE TABLE IF NOT EXISTS `modx_access_policy_templates` (
`id` int(10) unsigned NOT NULL,
  `template_group` int(10) unsigned NOT NULL DEFAULT '0',
  `name` varchar(255) NOT NULL DEFAULT '',
  `description` mediumtext,
  `lexicon` varchar(255) NOT NULL DEFAULT 'permissions'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ;

--
-- Dumping data for table `modx_access_policy_templates`
--

INSERT INTO `modx_access_policy_templates` (`id`, `template_group`, `name`, `description`, `lexicon`) VALUES
(1, 1, 'AdministratorTemplate', 'Context administration policy template with all permissions.', 'permissions'),
(2, 3, 'ResourceTemplate', 'Resource Policy Template with all attributes.', 'permissions'),
(3, 2, 'ObjectTemplate', 'Object Policy Template with all attributes.', 'permissions'),
(4, 4, 'ElementTemplate', 'Element Policy Template with all attributes.', 'permissions'),
(5, 5, 'MediaSourceTemplate', 'Media Source Policy Template with all attributes.', 'permissions'),
(6, 2, 'ContextTemplate', 'Context Policy Template with all attributes.', 'permissions'),
(7, 1, 'FileAttachTemplate', 'A policy template for attached files containers.', 'fileattach:permissions');

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_policy_template_groups`
--

CREATE TABLE IF NOT EXISTS `modx_access_policy_template_groups` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `description` mediumtext
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;

--
-- Dumping data for table `modx_access_policy_template_groups`
--

INSERT INTO `modx_access_policy_template_groups` (`id`, `name`, `description`) VALUES
(1, 'Admin', 'All admin policy templates.'),
(2, 'Object', 'All Object-based policy templates.'),
(3, 'Resource', 'All Resource-based policy templates.'),
(4, 'Element', 'All Element-based policy templates.'),
(5, 'MediaSource', 'All Media Source-based policy templates.');

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_resources`
--

CREATE TABLE IF NOT EXISTS `modx_access_resources` (
`id` int(10) unsigned NOT NULL,
  `target` varchar(100) NOT NULL DEFAULT '',
  `principal_class` varchar(100) NOT NULL DEFAULT 'modPrincipal',
  `principal` int(10) unsigned NOT NULL DEFAULT '0',
  `authority` int(10) unsigned NOT NULL DEFAULT '9999',
  `policy` int(10) unsigned NOT NULL DEFAULT '0',
  `context_key` varchar(100) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_resource_groups`
--

CREATE TABLE IF NOT EXISTS `modx_access_resource_groups` (
`id` int(10) unsigned NOT NULL,
  `target` varchar(100) NOT NULL DEFAULT '',
  `principal_class` varchar(100) NOT NULL DEFAULT 'modPrincipal',
  `principal` int(10) unsigned NOT NULL DEFAULT '0',
  `authority` int(10) unsigned NOT NULL DEFAULT '9999',
  `policy` int(10) unsigned NOT NULL DEFAULT '0',
  `context_key` varchar(100) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_access_templatevars`
--

CREATE TABLE IF NOT EXISTS `modx_access_templatevars` (
`id` int(10) unsigned NOT NULL,
  `target` varchar(100) NOT NULL DEFAULT '',
  `principal_class` varchar(100) NOT NULL DEFAULT 'modPrincipal',
  `principal` int(10) unsigned NOT NULL DEFAULT '0',
  `authority` int(10) unsigned NOT NULL DEFAULT '9999',
  `policy` int(10) unsigned NOT NULL DEFAULT '0',
  `context_key` varchar(100) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_actiondom`
--

CREATE TABLE IF NOT EXISTS `modx_actiondom` (
`id` int(10) unsigned NOT NULL,
  `set` int(11) NOT NULL DEFAULT '0',
  `action` varchar(255) NOT NULL DEFAULT '',
  `name` varchar(255) NOT NULL DEFAULT '',
  `description` text,
  `xtype` varchar(100) NOT NULL DEFAULT '',
  `container` varchar(255) NOT NULL DEFAULT '',
  `rule` varchar(100) NOT NULL DEFAULT '',
  `value` text NOT NULL,
  `constraint` varchar(255) NOT NULL DEFAULT '',
  `constraint_field` varchar(100) NOT NULL DEFAULT '',
  `constraint_class` varchar(100) NOT NULL DEFAULT '',
  `active` tinyint(1) unsigned NOT NULL DEFAULT '1',
  `for_parent` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `rank` int(11) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_actions`
--

CREATE TABLE IF NOT EXISTS `modx_actions` (
`id` int(10) unsigned NOT NULL,
  `namespace` varchar(100) NOT NULL DEFAULT 'core',
  `controller` varchar(255) NOT NULL,
  `haslayout` tinyint(1) unsigned NOT NULL DEFAULT '1',
  `lang_topics` text NOT NULL,
  `assets` text NOT NULL,
  `help_url` text NOT NULL
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;

--
-- Dumping data for table `modx_actions`
--

INSERT INTO `modx_actions` (`id`, `namespace`, `controller`, `haslayout`, `lang_topics`, `assets`, `help_url`) VALUES
(1, 'formit', 'index', 1, 'formit:mgr', '', ''),
(2, 'collections', 'index', 1, 'collections:default', '', ''),
(3, 'fileattach', 'index', 1, 'fileattach:default', '', ''),
(4, 'clientconfig', 'index', 1, 'clientconfig:default', '', ''),
(5, 'migx', 'index', 0, 'example:default', '', '');

-- --------------------------------------------------------

--
-- Table structure for table `modx_actions_fields`
--

CREATE TABLE IF NOT EXISTS `modx_actions_fields` (
`id` int(10) unsigned NOT NULL,
  `action` varchar(255) NOT NULL DEFAULT '',
  `name` varchar(255) NOT NULL DEFAULT '',
  `type` varchar(100) NOT NULL DEFAULT 'field',
  `tab` varchar(255) NOT NULL DEFAULT '',
  `form` varchar(255) NOT NULL DEFAULT '',
  `other` varchar(255) NOT NULL DEFAULT '',
  `rank` int(11) NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=77 ;

--
-- Dumping data for table `modx_actions_fields`
--

INSERT INTO `modx_actions_fields` (`id`, `action`, `name`, `type`, `tab`, `form`, `other`, `rank`) VALUES
(1, 'resource/update', 'modx-resource-settings', 'tab', '', 'modx-panel-resource', '', 0),
(2, 'resource/update', 'modx-resource-main-left', 'tab', '', 'modx-panel-resource', '', 1),
(3, 'resource/update', 'id', 'field', 'modx-resource-main-left', 'modx-panel-resource', '', 0),
(4, 'resource/update', 'pagetitle', 'field', 'modx-resource-main-left', 'modx-panel-resource', '', 1),
(5, 'resource/update', 'longtitle', 'field', 'modx-resource-main-left', 'modx-panel-resource', '', 2),
(6, 'resource/update', 'description', 'field', 'modx-resource-main-left', 'modx-panel-resource', '', 3),
(7, 'resource/update', 'introtext', 'field', 'modx-resource-main-left', 'modx-panel-resource', '', 4),
(8, 'resource/update', 'modx-resource-main-right', 'tab', '', 'modx-panel-resource', '', 2),
(9, 'resource/update', 'template', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 0),
(10, 'resource/update', 'alias', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 1),
(11, 'resource/update', 'menutitle', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 2),
(12, 'resource/update', 'link_attributes', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 3),
(13, 'resource/update', 'hidemenu', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 4),
(14, 'resource/update', 'published', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 5),
(15, 'resource/update', 'modx-page-settings', 'tab', '', 'modx-panel-resource', '', 3),
(16, 'resource/update', 'modx-page-settings-left', 'tab', '', 'modx-panel-resource', '', 4),
(17, 'resource/update', 'parent-cmb', 'field', 'modx-page-settings-left', 'modx-panel-resource', '', 0),
(18, 'resource/update', 'class_key', 'field', 'modx-page-settings-left', 'modx-panel-resource', '', 1),
(19, 'resource/update', 'content_type', 'field', 'modx-page-settings-left', 'modx-panel-resource', '', 2),
(20, 'resource/update', 'content_dispo', 'field', 'modx-page-settings-left', 'modx-panel-resource', '', 3),
(21, 'resource/update', 'menuindex', 'field', 'modx-page-settings-left', 'modx-panel-resource', '', 4),
(22, 'resource/update', 'modx-page-settings-right', 'tab', '', 'modx-panel-resource', '', 5),
(23, 'resource/update', 'publishedon', 'field', 'modx-page-settings-right', 'modx-panel-resource', '', 0),
(24, 'resource/update', 'pub_date', 'field', 'modx-page-settings-right', 'modx-panel-resource', '', 1),
(25, 'resource/update', 'unpub_date', 'field', 'modx-page-settings-right', 'modx-panel-resource', '', 2),
(26, 'resource/update', 'modx-page-settings-right-box-left', 'tab', '', 'modx-panel-resource', '', 6),
(27, 'resource/update', 'isfolder', 'field', 'modx-page-settings-right-box-left', 'modx-panel-resource', '', 0),
(28, 'resource/update', 'searchable', 'field', 'modx-page-settings-right-box-left', 'modx-panel-resource', '', 1),
(29, 'resource/update', 'richtext', 'field', 'modx-page-settings-right-box-left', 'modx-panel-resource', '', 2),
(30, 'resource/update', 'uri_override', 'field', 'modx-page-settings-right-box-left', 'modx-panel-resource', '', 3),
(31, 'resource/update', 'uri', 'field', 'modx-page-settings-right-box-left', 'modx-panel-resource', '', 4),
(32, 'resource/update', 'modx-page-settings-right-box-right', 'tab', '', 'modx-panel-resource', '', 7),
(33, 'resource/update', 'cacheable', 'field', 'modx-page-settings-right-box-right', 'modx-panel-resource', '', 0),
(34, 'resource/update', 'syncsite', 'field', 'modx-page-settings-right-box-right', 'modx-panel-resource', '', 1),
(35, 'resource/update', 'deleted', 'field', 'modx-page-settings-right-box-right', 'modx-panel-resource', '', 2),
(36, 'resource/update', 'modx-panel-resource-tv', 'tab', '', 'modx-panel-resource', 'tv', 8),
(37, 'resource/update', 'modx-resource-access-permissions', 'tab', '', 'modx-panel-resource', '', 9),
(38, 'resource/update', 'modx-resource-content', 'field', 'modx-resource-content', 'modx-panel-resource', '', 0),
(39, 'resource/create', 'modx-resource-settings', 'tab', '', 'modx-panel-resource', '', 0),
(40, 'resource/create', 'modx-resource-main-left', 'tab', '', 'modx-panel-resource', '', 1),
(41, 'resource/create', 'id', 'field', 'modx-resource-main-left', 'modx-panel-resource', '', 0),
(42, 'resource/create', 'pagetitle', 'field', 'modx-resource-main-left', 'modx-panel-resource', '', 1),
(43, 'resource/create', 'longtitle', 'field', 'modx-resource-main-left', 'modx-panel-resource', '', 2),
(44, 'resource/create', 'description', 'field', 'modx-resource-main-left', 'modx-panel-resource', '', 3),
(45, 'resource/create', 'introtext', 'field', 'modx-resource-main-left', 'modx-panel-resource', '', 4),
(46, 'resource/create', 'modx-resource-main-right', 'tab', '', 'modx-panel-resource', '', 2),
(47, 'resource/create', 'template', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 0),
(48, 'resource/create', 'alias', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 1),
(49, 'resource/create', 'menutitle', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 2),
(50, 'resource/create', 'link_attributes', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 3),
(51, 'resource/create', 'hidemenu', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 4),
(52, 'resource/create', 'published', 'field', 'modx-resource-main-right', 'modx-panel-resource', '', 5),
(53, 'resource/create', 'modx-page-settings', 'tab', '', 'modx-panel-resource', '', 3),
(54, 'resource/create', 'modx-page-settings-left', 'tab', '', 'modx-panel-resource', '', 4),
(55, 'resource/create', 'parent-cmb', 'field', 'modx-page-settings-left', 'modx-panel-resource', '', 0),
(56, 'resource/create', 'class_key', 'field', 'modx-page-settings-left', 'modx-panel-resource', '', 1),
(57, 'resource/create', 'content_type', 'field', 'modx-page-settings-left', 'modx-panel-resource', '', 2),
(58, 'resource/create', 'content_dispo', 'field', 'modx-page-settings-left', 'modx-panel-resource', '', 3),
(59, 'resource/create', 'menuindex', 'field', 'modx-page-settings-left', 'modx-panel-resource', '', 4),
(60, 'resource/create', 'modx-page-settings-right', 'tab', '', 'modx-panel-resource', '', 5),
(61, 'resource/create', 'publishedon', 'field', 'modx-page-settings-right', 'modx-panel-resource', '', 0),
(62, 'resource/create', 'pub_date', 'field', 'modx-page-settings-right', 'modx-panel-resource', '', 1),
(63, 'resource/create', 'unpub_date', 'field', 'modx-page-settings-right', 'modx-panel-resource', '', 2),
(64, 'resource/create', 'modx-page-settings-right-box-left', 'tab', '', 'modx-panel-resource', '', 6),
(65, 'resource/create', 'isfolder', 'field', 'modx-page-settings-right-box-left', 'modx-panel-resource', '', 0),
(66, 'resource/create', 'searchable', 'field', 'modx-page-settings-right-box-left', 'modx-panel-resource', '', 1),
(67, 'resource/create', 'richtext', 'field', 'modx-page-settings-right-box-left', 'modx-panel-resource', '', 2),
(68, 'resource/create', 'uri_override', 'field', 'modx-page-settings-right-box-left', 'modx-panel-resource', '', 3),
(69, 'resource/create', 'uri', 'field', 'modx-page-settings-right-box-left', 'modx-panel-resource', '', 4),
(70, 'resource/create', 'modx-page-settings-right-box-right', 'tab', '', 'modx-panel-resource', '', 7),
(71, 'resource/create', 'cacheable', 'field', 'modx-page-settings-right-box-right', 'modx-panel-resource', '', 0),
(72, 'resource/create', 'syncsite', 'field', 'modx-page-settings-right-box-right', 'modx-panel-resource', '', 1),
(73, 'resource/create', 'deleted', 'field', 'modx-page-settings-right-box-right', 'modx-panel-resource', '', 2),
(74, 'resource/create', 'modx-panel-resource-tv', 'tab', '', 'modx-panel-resource', 'tv', 8),
(75, 'resource/create', 'modx-resource-access-permissions', 'tab', '', 'modx-panel-resource', '', 9),
(76, 'resource/create', 'modx-resource-content', 'field', 'modx-resource-content', 'modx-panel-resource', '', 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_active_users`
--

CREATE TABLE IF NOT EXISTS `modx_active_users` (
  `internalKey` int(9) NOT NULL DEFAULT '0',
  `username` varchar(50) NOT NULL DEFAULT '',
  `lasthit` int(20) NOT NULL DEFAULT '0',
  `id` int(10) DEFAULT NULL,
  `action` varchar(255) NOT NULL DEFAULT '',
  `ip` varchar(20) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Table structure for table `modx_categories`
--

CREATE TABLE IF NOT EXISTS `modx_categories` (
`id` int(10) unsigned NOT NULL,
  `parent` int(10) unsigned DEFAULT '0',
  `category` varchar(45) NOT NULL DEFAULT ''
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=19 ;

--
-- Dumping data for table `modx_categories`
--

INSERT INTO `modx_categories` (`id`, `parent`, `category`) VALUES
(1, 0, 'FormIt'),
(2, 0, 'pdoTools'),
(3, 0, 'AjaxForm'),
(4, 0, 'Основные элементы'),
(5, 0, 'Новости'),
(6, 0, 'Шаблоны внутренних страниц'),
(7, 0, 'Контакты'),
(8, 0, 'Главная'),
(9, 0, 'Отчеты'),
(10, 0, 'Collections'),
(11, 0, 'FileAttach'),
(12, 0, 'MinifyX'),
(13, 0, 'TinyMCE Rich Text Editor'),
(14, 0, 'Этапы в структуре'),
(15, 0, 'ClientConfig'),
(16, 0, 'Участники'),
(17, 0, 'Механизм работы'),
(18, 0, 'MIGX');

-- --------------------------------------------------------

--
-- Table structure for table `modx_categories_closure`
--

CREATE TABLE IF NOT EXISTS `modx_categories_closure` (
  `ancestor` int(10) unsigned NOT NULL DEFAULT '0',
  `descendant` int(10) unsigned NOT NULL DEFAULT '0',
  `depth` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_categories_closure`
--

INSERT INTO `modx_categories_closure` (`ancestor`, `descendant`, `depth`) VALUES
(1, 1, 0),
(0, 1, 0),
(2, 2, 0),
(0, 2, 0),
(3, 3, 0),
(0, 3, 0),
(4, 4, 0),
(0, 4, 0),
(5, 5, 0),
(0, 5, 0),
(6, 6, 0),
(0, 6, 0),
(7, 7, 0),
(0, 7, 0),
(8, 8, 0),
(0, 8, 0),
(9, 9, 0),
(0, 9, 0),
(10, 10, 0),
(0, 10, 0),
(11, 11, 0),
(0, 11, 0),
(12, 12, 0),
(0, 12, 0),
(13, 13, 0),
(0, 13, 0),
(14, 14, 0),
(0, 14, 0),
(15, 15, 0),
(0, 15, 0),
(16, 16, 0),
(0, 16, 0),
(17, 17, 0),
(0, 17, 0),
(18, 18, 0),
(0, 18, 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_class_map`
--

CREATE TABLE IF NOT EXISTS `modx_class_map` (
`id` int(10) unsigned NOT NULL,
  `class` varchar(120) NOT NULL DEFAULT '',
  `parent_class` varchar(120) NOT NULL DEFAULT '',
  `name_field` varchar(255) NOT NULL DEFAULT 'name',
  `path` tinytext,
  `lexicon` varchar(255) NOT NULL DEFAULT 'core:resource'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;

--
-- Dumping data for table `modx_class_map`
--

INSERT INTO `modx_class_map` (`id`, `class`, `parent_class`, `name_field`, `path`, `lexicon`) VALUES
(1, 'modDocument', 'modResource', 'pagetitle', '', 'core:resource'),
(2, 'modWebLink', 'modResource', 'pagetitle', '', 'core:resource'),
(3, 'modSymLink', 'modResource', 'pagetitle', '', 'core:resource'),
(4, 'modStaticResource', 'modResource', 'pagetitle', '', 'core:resource'),
(5, 'modTemplate', 'modElement', 'templatename', '', 'core:resource'),
(6, 'modTemplateVar', 'modElement', 'name', '', 'core:resource'),
(7, 'modChunk', 'modElement', 'name', '', 'core:resource'),
(8, 'modSnippet', 'modElement', 'name', '', 'core:resource'),
(9, 'modPlugin', 'modElement', 'name', '', 'core:resource');

-- --------------------------------------------------------

--
-- Table structure for table `modx_clientconfig_group`
--

CREATE TABLE IF NOT EXISTS `modx_clientconfig_group` (
`id` int(10) unsigned NOT NULL,
  `label` varchar(75) NOT NULL DEFAULT '',
  `description` text NOT NULL,
  `sortorder` int(10) NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;

--
-- Dumping data for table `modx_clientconfig_group`
--

INSERT INTO `modx_clientconfig_group` (`id`, `label`, `description`, `sortorder`) VALUES
(1, 'Контакты в футере', 'Здесь заполняем контактную информацию, которая будет размещена внизу сайта (в футере)', 0),
(2, 'Страница контактов', 'Здесь заполняем контактную информацию, которая будет размещена на странице "Контакты"', 0),
(3, 'Шапка сайта', 'Заполните название проекта, и укажите картинку для шапки', 10);

-- --------------------------------------------------------

--
-- Table structure for table `modx_clientconfig_setting`
--

CREATE TABLE IF NOT EXISTS `modx_clientconfig_setting` (
`id` int(10) unsigned NOT NULL,
  `key` varchar(75) NOT NULL DEFAULT '',
  `label` varchar(75) NOT NULL DEFAULT '',
  `xtype` varchar(75) NOT NULL DEFAULT '',
  `description` text NOT NULL,
  `is_required` tinyint(1) NOT NULL DEFAULT '0',
  `sortorder` int(10) NOT NULL DEFAULT '0',
  `value` mediumtext NOT NULL,
  `default` mediumtext NOT NULL,
  `group` int(11) DEFAULT '0',
  `options` mediumtext
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=21 ;

--
-- Dumping data for table `modx_clientconfig_setting`
--

INSERT INTO `modx_clientconfig_setting` (`id`, `key`, `label`, `xtype`, `description`, `is_required`, `sortorder`, `value`, `default`, `group`, `options`) VALUES
(1, 'f.officename', 'Название офиса', 'textfield', 'Введите название офиса, например "Офис в Москве" ', 0, 0, 'Офис в Москве', '', 1, ''),
(2, 'f.officelocation', 'Местоположение офиса', 'textfield', '', 0, 10, '109012, г. Москва,<br>ул. Охотный Ряд, д.2', '', 1, ''),
(3, 'f.mainphone', 'Телефон', 'textfield', '', 0, 20, '+7 (499) 11 22 33', '', 1, ''),
(4, 'f.fax', 'Факс', 'textfield', '', 0, 30, '+7 (499) 11 22 33', '', 1, ''),
(5, 'f.workinghours', 'Режим работы', 'textfield', '', 0, 50, 'В будни с 9:00 до 17:30', '', 1, ''),
(6, 'f.email', 'Почта для отправки писем с формы', 'textfield', 'Укажите адрес почты, на который будут приходить сообщения с формы обратной связи в футере', 0, 60, 'suhomozgy.andrey@gmail.com', '', 1, ''),
(7, 'f.copyright', 'Копирайт', 'textfield', '', 0, 70, '© ООО «Компания разработчик», 2015 г.', '', 1, ''),
(8, 'h.projectname', 'Название проекта', 'textfield', '', 0, 0, 'Название проекта', '', 3, ''),
(9, 'h.headerpic', 'Картинка в фоне шапки', 'modx-panel-tv-image', '', 0, 10, 'assets/img/section-header-bg-demo.png', '', 3, ''),
(10, 'c.fullname', 'Полное название получателя', 'textfield', '', 0, 0, 'Получатель субсидии и разработчик:<br/>ООО «Компания разработчик»', '', 2, ''),
(11, 'с.officename', 'Название офиса', 'textfield', 'Например, "Офис в Москве"', 0, 10, 'Офис в Москве', '', 2, ''),
(12, 'c.officelocation', 'Местоположение офиса', 'textfield', '', 0, 20, '109012, г. Москва,<br>ул. Охотный Ряд, д.2', '', 2, ''),
(13, 'c.phone', 'Телефон', 'textfield', '', 0, 30, '+7 (499) 11 22 33', '', 2, ''),
(14, 'c.fax', 'Телефон/Факс', 'textfield', '', 0, 40, '+7 (499) 11 22 33', '', 2, ''),
(15, 'c.workinghours', 'Режим работы', 'textfield', '', 0, 50, 'В будни с 9:00 до 17:30', '', 2, ''),
(16, 'c.leader', 'Руководитель проекта', 'textfield', 'Фамилия, Имя и Отчество руководителя', 0, 60, 'Иванов Иван Иванович', '', 2, ''),
(17, 'c.leaderstatus', 'Должность руководителя', 'textfield', '', 0, 70, 'Генеральный директор ООО «Компания разработчик»', '', 2, ''),
(18, 'c.leaderphone', 'Телефон руководителя', 'textfield', '', 0, 80, '+7 (903) 123-45-67', '', 2, ''),
(19, 'c.leaderemail', 'Электронная почта руководителя', 'textfield', '', 0, 90, 'ivanov@companyname.ru', '', 2, ''),
(20, 'c.formemail', 'Почта для отправки писем с формы', 'textfield', '', 0, 100, 'suhomozgy.andrey@gmail.com', '', 2, '');

-- --------------------------------------------------------

--
-- Table structure for table `modx_collection_resource_template`
--

CREATE TABLE IF NOT EXISTS `modx_collection_resource_template` (
  `collection_template` int(10) unsigned NOT NULL,
  `resource_template` int(10) unsigned NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Table structure for table `modx_collection_selections`
--

CREATE TABLE IF NOT EXISTS `modx_collection_selections` (
  `collection` int(10) unsigned NOT NULL,
  `resource` int(10) unsigned NOT NULL,
  `menuindex` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Table structure for table `modx_collection_settings`
--

CREATE TABLE IF NOT EXISTS `modx_collection_settings` (
`id` int(10) unsigned NOT NULL,
  `collection` int(10) unsigned NOT NULL,
  `template` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;

--
-- Dumping data for table `modx_collection_settings`
--

INSERT INTO `modx_collection_settings` (`id`, `collection`, `template`) VALUES
(1, 19, 2),
(2, 20, 2),
(3, 12, 3),
(4, 13, 3),
(5, 8, 4);

-- --------------------------------------------------------

--
-- Table structure for table `modx_collection_templates`
--

CREATE TABLE IF NOT EXISTS `modx_collection_templates` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(50) NOT NULL,
  `description` varchar(255) NOT NULL DEFAULT '',
  `global_template` int(1) NOT NULL DEFAULT '0',
  `bulk_actions` int(1) NOT NULL DEFAULT '0',
  `allow_dd` int(1) NOT NULL DEFAULT '1',
  `page_size` int(10) NOT NULL DEFAULT '20',
  `sort_field` varchar(100) NOT NULL DEFAULT 'id',
  `sort_dir` varchar(4) NOT NULL DEFAULT 'asc',
  `child_template` int(10) unsigned DEFAULT NULL,
  `child_resource_type` varchar(100) NOT NULL DEFAULT 'modDocument',
  `resource_type_selection` int(1) NOT NULL DEFAULT '1',
  `tab_label` varchar(255) NOT NULL DEFAULT 'collections.children',
  `button_label` varchar(255) NOT NULL DEFAULT 'collections.children.create',
  `content_place` varchar(255) NOT NULL DEFAULT 'original',
  `view_for` int(1) unsigned NOT NULL DEFAULT '0',
  `link_label` varchar(255) NOT NULL DEFAULT 'selections.create',
  `context_menu` varchar(512) NOT NULL DEFAULT 'view,edit,duplicate,publish,unpublish,-,delete,undelete,remove,-,unlink',
  `buttons` varchar(512) NOT NULL DEFAULT 'view,edit,duplicate,publish:orange,unpublish,delete,undelete,remove,unlink',
  `allowed_resource_types` varchar(512) NOT NULL DEFAULT '',
  `back_to_collection_label` varchar(255) NOT NULL DEFAULT 'collections.children.back_to_collection_label',
  `back_to_selection_label` varchar(255) NOT NULL DEFAULT 'selections.back_to_selection_label',
  `selection_create_sort` varchar(255) NOT NULL DEFAULT 'id:desc',
  `child_hide_from_menu` int(1) DEFAULT NULL,
  `child_published` int(1) DEFAULT NULL,
  `child_cacheable` int(1) DEFAULT NULL,
  `child_searchable` int(1) DEFAULT NULL,
  `child_richtext` int(1) DEFAULT NULL,
  `child_content_type` int(10) NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;

--
-- Dumping data for table `modx_collection_templates`
--

INSERT INTO `modx_collection_templates` (`id`, `name`, `description`, `global_template`, `bulk_actions`, `allow_dd`, `page_size`, `sort_field`, `sort_dir`, `child_template`, `child_resource_type`, `resource_type_selection`, `tab_label`, `button_label`, `content_place`, `view_for`, `link_label`, `context_menu`, `buttons`, `allowed_resource_types`, `back_to_collection_label`, `back_to_selection_label`, `selection_create_sort`, `child_hide_from_menu`, `child_published`, `child_cacheable`, `child_searchable`, `child_richtext`, `child_content_type`) VALUES
(1, 'Blog', 'A default view that works well for blogs.', 1, 1, 1, 10, 'publishedon', 'desc', NULL, 'modDocument', 1, 'collections.children', 'collections.children.create', 'original', 0, 'selections.create', 'view,edit,duplicate,publish,unpublish,-,delete,undelete,remove,-,unlink', 'view,edit,duplicate,publish:orange,unpublish,delete,undelete,remove,unlink', '', 'collections.children.back_to_collection_label', 'selections.back_to_selection_label', 'id:desc', NULL, NULL, NULL, NULL, NULL, 0),
(2, 'Отчетность', 'Вид оформления списка с отчетами', 0, 1, 1, 10, 'publishedon', 'desc', 8, 'modDocument', 0, 'collections.children', 'Добавить отчет', 'original', 0, 'selections.create', 'view,edit,duplicate,publish,unpublish,-,delete,undelete,remove,-,unlink', 'view,edit,duplicate,publish:orange,unpublish,delete,undelete,remove,unlink', '', 'К списку отчетов', 'selections.back_to_selection_label', 'id:desc', 1, NULL, NULL, NULL, NULL, 0),
(3, 'Новости', 'Вид списка новостей', 0, 1, 1, 10, 'publishedon', 'desc', 5, 'modDocument', 0, 'Новости', 'Добавить новость', 'original', 0, 'selections.create', 'view,edit,duplicate,publish,unpublish,-,delete,undelete,remove,-,unlink', 'view,edit,duplicate,publish:orange,unpublish,delete,undelete,remove,unlink', '', 'К списку новостей', 'selections.back_to_selection_label', 'id:desc', NULL, NULL, NULL, NULL, NULL, 0),
(4, 'Структура', 'Разбиение по этапам', 0, 1, 1, 10, 'publishedon', 'desc', 3, 'modDocument', 0, 'Структура', 'Добавить этап', 'original', 0, 'selections.create', 'view,edit,duplicate,publish,unpublish,-,delete,undelete,remove,-,unlink', 'view,edit,duplicate,publish:orange,unpublish,delete,undelete,remove,unlink', '', 'К списку этапов', 'selections.back_to_selection_label', 'id:desc', NULL, NULL, NULL, NULL, NULL, 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_collection_template_columns`
--

CREATE TABLE IF NOT EXISTS `modx_collection_template_columns` (
`id` int(10) unsigned NOT NULL,
  `template` int(10) unsigned NOT NULL,
  `label` varchar(50) NOT NULL,
  `name` varchar(50) NOT NULL,
  `hidden` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `sortable` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `width` int(10) unsigned NOT NULL DEFAULT '100',
  `editor` varchar(255) NOT NULL DEFAULT '',
  `renderer` varchar(255) NOT NULL DEFAULT '',
  `php_renderer` varchar(255) NOT NULL DEFAULT '',
  `position` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=21 ;

--
-- Dumping data for table `modx_collection_template_columns`
--

INSERT INTO `modx_collection_template_columns` (`id`, `template`, `label`, `name`, `hidden`, `sortable`, `width`, `editor`, `renderer`, `php_renderer`, `position`) VALUES
(1, 1, 'id', 'id', 1, 1, 40, '', '', '', 0),
(2, 1, 'publishedon', 'publishedon', 0, 1, 40, '', 'Collections.renderer.datetimeTwoLines', '', 1),
(3, 1, 'pagetitle', 'pagetitle', 0, 1, 170, '', 'Collections.renderer.pagetitleWithButtons', '', 2),
(4, 1, 'alias', 'alias', 0, 1, 100, '', '', '', 3),
(5, 1, 'resource_menuindex', 'menuindex', 0, 1, 50, '{"xtype":"numberfield","allowNegative":false,"allowDecimal":false}', '', '', 4),
(6, 2, 'id', 'id', 1, 1, 40, '', '', '', 0),
(7, 2, 'publishedon', 'publishedon', 0, 1, 40, '', 'Collections.renderer.datetimeTwoLines', '', 1),
(8, 2, 'pagetitle', 'pagetitle', 0, 1, 170, '', 'Collections.renderer.pagetitleWithButtons', '', 2),
(9, 2, 'alias', 'alias', 0, 1, 100, '', '', '', 3),
(10, 2, 'resource_menuindex', 'menuindex', 0, 1, 50, '{"xtype":"numberfield","allowNegative":false,"allowDecimal":false}', '', '', 4),
(11, 3, 'id', 'id', 1, 1, 40, '', '', '', 0),
(12, 3, 'publishedon', 'publishedon', 0, 1, 40, '', 'Collections.renderer.datetimeTwoLines', '', 1),
(13, 3, 'pagetitle', 'pagetitle', 0, 1, 170, '', 'Collections.renderer.pagetitleWithButtons', '', 2),
(14, 3, 'alias', 'alias', 0, 1, 100, '', '', '', 3),
(15, 3, 'resource_menuindex', 'menuindex', 0, 1, 50, '{"xtype":"numberfield","allowNegative":false,"allowDecimal":false}', '', '', 4),
(16, 4, 'id', 'id', 1, 1, 40, '', '', '', 0),
(17, 4, 'publishedon', 'publishedon', 0, 1, 40, '', 'Collections.renderer.datetimeTwoLines', '', 1),
(18, 4, 'pagetitle', 'pagetitle', 0, 1, 170, '', 'Collections.renderer.pagetitleWithButtons', '', 2),
(19, 4, 'alias', 'alias', 0, 1, 100, '', '', '', 3),
(20, 4, 'resource_menuindex', 'menuindex', 0, 1, 50, '{"xtype":"numberfield","allowNegative":false,"allowDecimal":false}', '', '', 4);

-- --------------------------------------------------------

--
-- Table structure for table `modx_content_type`
--

CREATE TABLE IF NOT EXISTS `modx_content_type` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL,
  `description` tinytext,
  `mime_type` tinytext,
  `file_extensions` tinytext,
  `headers` mediumtext,
  `binary` tinyint(1) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;

--
-- Dumping data for table `modx_content_type`
--

INSERT INTO `modx_content_type` (`id`, `name`, `description`, `mime_type`, `file_extensions`, `headers`, `binary`) VALUES
(1, 'HTML', 'HTML content', 'text/html', '/', NULL, 0),
(2, 'XML', 'XML content', 'text/xml', '.xml', NULL, 0),
(3, 'text', 'plain text content', 'text/plain', '.txt', NULL, 0),
(4, 'CSS', 'CSS content', 'text/css', '.css', NULL, 0),
(5, 'javascript', 'javascript content', 'text/javascript', '.js', NULL, 0),
(6, 'RSS', 'For RSS feeds', 'application/rss+xml', '.rss', NULL, 0),
(7, 'JSON', 'JSON', 'application/json', '.json', NULL, 0),
(8, 'PDF', 'PDF Files', 'application/pdf', '.pdf', NULL, 1);

-- --------------------------------------------------------

--
-- Table structure for table `modx_context`
--

CREATE TABLE IF NOT EXISTS `modx_context` (
  `key` varchar(100) NOT NULL,
  `name` varchar(255) DEFAULT NULL,
  `description` tinytext,
  `rank` int(11) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_context`
--

INSERT INTO `modx_context` (`key`, `name`, `description`, `rank`) VALUES
('web', 'Website', 'The default front-end context for your web site.', 0),
('mgr', 'Manager', 'The default manager or administration context for content management activity.', 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_context_resource`
--

CREATE TABLE IF NOT EXISTS `modx_context_resource` (
  `context_key` varchar(255) NOT NULL,
  `resource` int(11) unsigned NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Table structure for table `modx_context_setting`
--

CREATE TABLE IF NOT EXISTS `modx_context_setting` (
  `context_key` varchar(255) NOT NULL,
  `key` varchar(50) NOT NULL,
  `value` mediumtext,
  `xtype` varchar(75) NOT NULL DEFAULT 'textfield',
  `namespace` varchar(40) NOT NULL DEFAULT 'core',
  `area` varchar(255) NOT NULL DEFAULT '',
  `editedon` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_context_setting`
--

INSERT INTO `modx_context_setting` (`context_key`, `key`, `value`, `xtype`, `namespace`, `area`, `editedon`) VALUES
('mgr', 'allow_tags_in_post', '1', 'combo-boolean', 'core', 'system', '0000-00-00 00:00:00'),
('mgr', 'modRequest.class', 'modManagerRequest', 'textfield', 'core', 'system', '0000-00-00 00:00:00');

-- --------------------------------------------------------

--
-- Table structure for table `modx_dashboard`
--

CREATE TABLE IF NOT EXISTS `modx_dashboard` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `description` text,
  `hide_trees` tinyint(1) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

--
-- Dumping data for table `modx_dashboard`
--

INSERT INTO `modx_dashboard` (`id`, `name`, `description`, `hide_trees`) VALUES
(1, 'Default', '', 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_dashboard_widget`
--

CREATE TABLE IF NOT EXISTS `modx_dashboard_widget` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `description` text,
  `type` varchar(100) NOT NULL,
  `content` mediumtext,
  `namespace` varchar(255) NOT NULL DEFAULT '',
  `lexicon` varchar(255) NOT NULL DEFAULT 'core:dashboards',
  `size` varchar(255) NOT NULL DEFAULT 'half'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;

--
-- Dumping data for table `modx_dashboard_widget`
--

INSERT INTO `modx_dashboard_widget` (`id`, `name`, `description`, `type`, `content`, `namespace`, `lexicon`, `size`) VALUES
(1, 'w_newsfeed', 'w_newsfeed_desc', 'file', '[[++manager_path]]controllers/default/dashboard/widget.modx-news.php', 'core', 'core:dashboards', 'half'),
(2, 'w_securityfeed', 'w_securityfeed_desc', 'file', '[[++manager_path]]controllers/default/dashboard/widget.modx-security.php', 'core', 'core:dashboards', 'half'),
(3, 'w_whosonline', 'w_whosonline_desc', 'file', '[[++manager_path]]controllers/default/dashboard/widget.grid-online.php', 'core', 'core:dashboards', 'half'),
(4, 'w_recentlyeditedresources', 'w_recentlyeditedresources_desc', 'file', '[[++manager_path]]controllers/default/dashboard/widget.grid-rer.php', 'core', 'core:dashboards', 'half'),
(5, 'w_configcheck', 'w_configcheck_desc', 'file', '[[++manager_path]]controllers/default/dashboard/widget.configcheck.php', 'core', 'core:dashboards', 'full');

-- --------------------------------------------------------

--
-- Table structure for table `modx_dashboard_widget_placement`
--

CREATE TABLE IF NOT EXISTS `modx_dashboard_widget_placement` (
  `dashboard` int(10) unsigned NOT NULL DEFAULT '0',
  `widget` int(10) unsigned NOT NULL DEFAULT '0',
  `rank` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_dashboard_widget_placement`
--

INSERT INTO `modx_dashboard_widget_placement` (`dashboard`, `widget`, `rank`) VALUES
(1, 5, 0),
(1, 1, 1),
(1, 2, 2),
(1, 3, 3),
(1, 4, 4);

-- --------------------------------------------------------

--
-- Table structure for table `modx_documentgroup_names`
--

CREATE TABLE IF NOT EXISTS `modx_documentgroup_names` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `private_memgroup` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `private_webgroup` tinyint(1) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_document_groups`
--

CREATE TABLE IF NOT EXISTS `modx_document_groups` (
`id` int(10) unsigned NOT NULL,
  `document_group` int(10) NOT NULL DEFAULT '0',
  `document` int(10) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_element_property_sets`
--

CREATE TABLE IF NOT EXISTS `modx_element_property_sets` (
  `element` int(10) unsigned NOT NULL DEFAULT '0',
  `element_class` varchar(100) NOT NULL DEFAULT '',
  `property_set` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Table structure for table `modx_extension_packages`
--

CREATE TABLE IF NOT EXISTS `modx_extension_packages` (
`id` int(10) unsigned NOT NULL,
  `namespace` varchar(40) NOT NULL DEFAULT 'core',
  `name` varchar(100) NOT NULL DEFAULT 'core',
  `path` text,
  `table_prefix` varchar(255) NOT NULL DEFAULT '',
  `service_class` varchar(255) NOT NULL DEFAULT '',
  `service_name` varchar(255) NOT NULL DEFAULT '',
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_fc_profiles`
--

CREATE TABLE IF NOT EXISTS `modx_fc_profiles` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `description` text NOT NULL,
  `active` tinyint(1) NOT NULL DEFAULT '0',
  `rank` int(11) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_fc_profiles_usergroups`
--

CREATE TABLE IF NOT EXISTS `modx_fc_profiles_usergroups` (
  `usergroup` int(11) NOT NULL DEFAULT '0',
  `profile` int(11) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Table structure for table `modx_fc_sets`
--

CREATE TABLE IF NOT EXISTS `modx_fc_sets` (
`id` int(10) unsigned NOT NULL,
  `profile` int(11) NOT NULL DEFAULT '0',
  `action` varchar(255) NOT NULL DEFAULT '',
  `description` text NOT NULL,
  `active` tinyint(1) NOT NULL DEFAULT '0',
  `template` int(11) NOT NULL DEFAULT '0',
  `constraint` varchar(255) NOT NULL DEFAULT '',
  `constraint_field` varchar(100) NOT NULL DEFAULT '',
  `constraint_class` varchar(100) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_files`
--

CREATE TABLE IF NOT EXISTS `modx_files` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `internal_name` varchar(255) NOT NULL DEFAULT '',
  `path` varchar(100) NOT NULL DEFAULT '',
  `description` varchar(255) NOT NULL DEFAULT '',
  `hash` varchar(50) NOT NULL DEFAULT '',
  `private` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `download` int(10) unsigned NOT NULL DEFAULT '0',
  `docid` int(10) NOT NULL DEFAULT '0',
  `uid` int(10) NOT NULL DEFAULT '0',
  `rank` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;

--
-- Dumping data for table `modx_files`
--

INSERT INTO `modx_files` (`id`, `name`, `internal_name`, `path`, `description`, `hash`, `private`, `download`, `docid`, `uid`, `rank`) VALUES
(8, 'doc-example.pdf', 'doc-example.pdf', '21/', 'Документ 2', '', 0, 1, 21, 1, 0),
(9, 'doc-example.pdf', 'uHxz.txt_doc-example.pdf', '21/', 'Документ 1', '', 0, 0, 21, 1, 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_formit_forms`
--

CREATE TABLE IF NOT EXISTS `modx_formit_forms` (
`id` int(10) unsigned NOT NULL,
  `form` varchar(255) NOT NULL DEFAULT '',
  `context_key` varchar(100) NOT NULL DEFAULT '',
  `values` text NOT NULL,
  `ip` varchar(15) NOT NULL DEFAULT '',
  `date` int(11) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_lexicon_entries`
--

CREATE TABLE IF NOT EXISTS `modx_lexicon_entries` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `value` text NOT NULL,
  `topic` varchar(255) NOT NULL DEFAULT 'default',
  `namespace` varchar(40) NOT NULL DEFAULT 'core',
  `language` varchar(20) NOT NULL DEFAULT 'en',
  `createdon` datetime DEFAULT NULL,
  `editedon` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_manager_log`
--

CREATE TABLE IF NOT EXISTS `modx_manager_log` (
`id` int(10) unsigned NOT NULL,
  `user` int(10) unsigned NOT NULL DEFAULT '0',
  `occurred` datetime DEFAULT '0000-00-00 00:00:00',
  `action` varchar(100) NOT NULL DEFAULT '',
  `classKey` varchar(100) NOT NULL DEFAULT '',
  `item` varchar(255) NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=746 ;

--
-- Dumping data for table `modx_manager_log`
--

INSERT INTO `modx_manager_log` (`id`, `user`, `occurred`, `action`, `classKey`, `item`) VALUES
(1, 1, '2015-03-24 15:48:06', 'content_type_save', 'modContentType', '1'),
(2, 1, '2015-03-24 15:48:20', 'setting_update', 'modSystemSetting', 'friendly_urls'),
(3, 1, '2015-03-24 15:48:23', 'setting_update', 'modSystemSetting', 'use_alias_path'),
(4, 1, '2015-03-24 15:48:38', 'setting_update', 'modSystemSetting', 'site_name'),
(5, 1, '2015-03-24 15:49:49', 'template_update', 'modTemplate', '1'),
(6, 1, '2015-03-24 15:51:15', 'provider_create', 'transport.modTransportProvider', '2'),
(7, 1, '2015-03-24 15:54:10', 'setting_update', 'modSystemSetting', 'ace.word_wrap'),
(8, 1, '2015-03-24 15:54:21', 'setting_update', 'modSystemSetting', 'ace.theme'),
(9, 1, '2015-03-24 15:54:43', 'template_update', 'modTemplate', '1'),
(10, 1, '2015-03-24 15:57:00', 'template_update', 'modTemplate', '1'),
(11, 1, '2015-03-24 15:57:08', 'chunk_duplicate', 'modChunk', '2'),
(12, 1, '2015-03-24 15:57:48', 'chunk_create', 'modChunk', '3'),
(13, 1, '2015-03-24 15:57:53', 'template_update', 'modTemplate', '1'),
(14, 1, '2015-03-24 15:59:34', 'chunk_update', 'modChunk', '2'),
(15, 1, '2015-03-24 16:00:26', 'chunk_update', 'modChunk', '2'),
(16, 1, '2015-03-24 16:07:37', 'template_duplicate', 'modTemplate', '2'),
(17, 1, '2015-03-24 16:08:16', 'template_update', 'modTemplate', '2'),
(18, 1, '2015-03-24 16:09:13', 'template_update', 'modTemplate', '2'),
(19, 1, '2015-03-24 16:09:22', 'template_update', 'modTemplate', '2'),
(20, 1, '2015-03-24 16:10:59', 'template_update', 'modTemplate', '2'),
(21, 1, '2015-03-24 16:11:32', 'resource_create', 'modDocument', '2'),
(22, 1, '2015-03-24 16:11:47', 'resource_update', 'modResource', '2'),
(23, 1, '2015-03-24 16:12:11', 'duplicate_resource', 'modDocument', '3'),
(24, 1, '2015-03-24 16:12:29', 'resource_update', 'modResource', '3'),
(25, 1, '2015-03-24 16:12:34', 'duplicate_resource', 'modDocument', '4'),
(26, 1, '2015-03-24 16:12:50', 'resource_update', 'modResource', '4'),
(27, 1, '2015-03-24 16:12:56', 'duplicate_resource', 'modDocument', '5'),
(28, 1, '2015-03-24 16:13:13', 'resource_update', 'modResource', '5'),
(29, 1, '2015-03-24 16:13:20', 'duplicate_resource', 'modDocument', '6'),
(30, 1, '2015-03-24 16:13:36', 'resource_update', 'modResource', '6'),
(31, 1, '2015-03-24 16:15:12', 'resource_update', 'modResource', '4'),
(32, 1, '2015-03-24 16:16:20', 'template_update', 'modTemplate', '2'),
(33, 1, '2015-03-24 16:16:41', 'template_update', 'modTemplate', '2'),
(34, 1, '2015-03-24 16:20:05', 'template_update', 'modTemplate', '2'),
(35, 1, '2015-03-24 16:20:49', 'template_update', 'modTemplate', '1'),
(36, 1, '2015-03-24 16:22:17', 'resource_create', 'modDocument', '7'),
(37, 1, '2015-03-24 16:22:25', 'duplicate_resource', 'modDocument', '8'),
(38, 1, '2015-03-24 16:22:41', 'resource_update', 'modResource', '8'),
(39, 1, '2015-03-24 16:22:48', 'duplicate_resource', 'modDocument', '9'),
(40, 1, '2015-03-24 16:23:05', 'resource_update', 'modResource', '9'),
(41, 1, '2015-03-24 16:23:09', 'duplicate_resource', 'modDocument', '10'),
(42, 1, '2015-03-24 16:23:24', 'resource_update', 'modResource', '10'),
(43, 1, '2015-03-24 16:23:29', 'duplicate_resource', 'modDocument', '11'),
(44, 1, '2015-03-24 16:23:49', 'resource_update', 'modResource', '11'),
(45, 1, '2015-03-24 16:24:20', 'template_update', 'modTemplate', '2'),
(46, 1, '2015-03-24 16:24:58', 'template_update', 'modTemplate', '2'),
(47, 1, '2015-03-24 16:25:22', 'template_update', 'modTemplate', '2'),
(48, 1, '2015-03-24 16:25:39', 'template_update', 'modTemplate', '2'),
(49, 1, '2015-03-24 16:25:47', 'template_update', 'modTemplate', '1'),
(50, 1, '2015-03-24 16:26:12', 'template_update', 'modTemplate', '1'),
(51, 1, '2015-03-24 16:26:24', 'template_update', 'modTemplate', '2'),
(52, 1, '2015-03-24 16:31:59', 'template_update', 'modTemplate', '1'),
(53, 1, '2015-03-24 16:33:56', 'category_create', 'modCategory', '4'),
(54, 1, '2015-03-24 16:34:29', 'chunk_create', 'modChunk', '4'),
(55, 1, '2015-03-24 16:34:44', 'template_update', 'modTemplate', '2'),
(56, 1, '2015-03-24 16:34:51', 'template_update', 'modTemplate', '1'),
(57, 1, '2015-03-24 16:35:22', 'chunk_create', 'modChunk', '5'),
(58, 1, '2015-03-24 16:36:09', 'chunk_create', 'modChunk', '6'),
(59, 1, '2015-03-24 16:36:12', 'template_update', 'modTemplate', '2'),
(60, 1, '2015-03-24 16:36:22', 'template_update', 'modTemplate', '1'),
(61, 1, '2015-03-24 16:36:53', 'template_update', 'modTemplate', '2'),
(62, 1, '2015-03-24 16:37:22', 'template_update', 'modTemplate', '2'),
(63, 1, '2015-03-24 16:37:32', 'template_duplicate', 'modTemplate', '3'),
(64, 1, '2015-03-24 16:39:46', 'template_update', 'modTemplate', '3'),
(65, 1, '2015-03-24 16:42:32', 'resource_update', 'modResource', '7'),
(66, 1, '2015-03-24 16:42:45', 'resource_update', 'modResource', '8'),
(67, 1, '2015-03-24 16:42:55', 'resource_update', 'modResource', '9'),
(68, 1, '2015-03-24 16:43:09', 'resource_update', 'modResource', '10'),
(69, 1, '2015-03-24 16:43:20', 'resource_update', 'modResource', '11'),
(70, 1, '2015-03-24 16:43:57', 'template_update', 'modTemplate', '3'),
(71, 1, '2015-03-24 16:44:30', 'template_update', 'modTemplate', '3'),
(72, 1, '2015-03-24 16:45:16', 'template_update', 'modTemplate', '3'),
(73, 1, '2015-03-24 16:45:19', 'template_update', 'modTemplate', '3'),
(74, 1, '2015-03-24 16:45:45', 'template_update', 'modTemplate', '3'),
(75, 1, '2015-03-24 16:49:55', 'template_update', 'modTemplate', '3'),
(76, 1, '2015-03-24 16:50:22', 'template_update', 'modTemplate', '3'),
(77, 1, '2015-03-24 16:53:01', 'resource_update', 'modResource', '7'),
(78, 1, '2015-03-24 16:55:11', 'resource_update', 'modResource', '11'),
(79, 1, '2015-03-24 16:59:26', 'resource_update', 'modResource', '9'),
(80, 1, '2015-03-24 17:02:45', 'resource_update', 'modResource', '9'),
(81, 1, '2015-03-24 17:03:25', 'resource_update', 'modResource', '9'),
(82, 1, '2015-03-24 17:05:26', 'resource_update', 'modResource', '9'),
(83, 1, '2015-03-24 17:06:00', 'resource_update', 'modResource', '9'),
(84, 1, '2015-03-24 17:10:50', 'template_duplicate', 'modTemplate', '4'),
(85, 1, '2015-03-24 17:11:22', 'template_update', 'modTemplate', '4'),
(86, 1, '2015-03-24 17:11:42', 'template_update', 'modTemplate', '4'),
(87, 1, '2015-03-24 17:11:56', 'template_duplicate', 'modTemplate', '5'),
(88, 1, '2015-03-24 17:12:08', 'template_update', 'modTemplate', '5'),
(89, 1, '2015-03-24 17:12:34', 'resource_update', 'modResource', '5'),
(90, 1, '2015-03-24 17:16:46', 'resource_create', 'modDocument', '12'),
(91, 1, '2015-03-24 17:16:54', 'duplicate_resource', 'modDocument', '13'),
(92, 1, '2015-03-24 17:17:11', 'resource_update', 'modResource', '13'),
(93, 1, '2015-03-24 17:20:38', 'template_update', 'modTemplate', '4'),
(94, 1, '2015-03-24 17:20:54', 'template_update', 'modTemplate', '4'),
(95, 1, '2015-03-24 17:22:12', 'template_update', 'modTemplate', '4'),
(96, 1, '2015-03-24 17:22:51', 'template_update', 'modTemplate', '4'),
(97, 1, '2015-03-24 17:23:04', 'template_update', 'modTemplate', '4'),
(98, 1, '2015-03-24 17:23:25', 'template_update', 'modTemplate', '4'),
(99, 1, '2015-03-24 17:28:17', 'resource_create', 'modDocument', '14'),
(100, 1, '2015-03-24 17:28:40', 'resource_update', 'modResource', '14'),
(101, 1, '2015-03-24 17:29:45', 'resource_update', 'modResource', '14'),
(102, 1, '2015-03-24 17:30:02', 'duplicate_resource', 'modDocument', '15'),
(103, 1, '2015-03-24 17:30:20', 'resource_update', 'modResource', '15'),
(104, 1, '2015-03-24 17:34:33', 'template_update', 'modTemplate', '4'),
(105, 1, '2015-03-24 17:34:42', 'template_update', 'modTemplate', '4'),
(106, 1, '2015-03-24 17:36:38', 'chunk_create', 'modChunk', '7'),
(107, 1, '2015-03-24 17:36:53', 'chunk_update', 'modChunk', '7'),
(108, 1, '2015-03-24 17:37:19', 'chunk_update', 'modChunk', '7'),
(109, 1, '2015-03-24 17:38:13', 'chunk_update', 'modChunk', '7'),
(110, 1, '2015-03-24 17:39:31', 'chunk_update', 'modChunk', '7'),
(111, 1, '2015-03-24 17:40:51', 'template_update', 'modTemplate', '4'),
(112, 1, '2015-03-24 17:40:54', 'template_update', 'modTemplate', '4'),
(113, 1, '2015-03-24 17:41:08', 'chunk_update', 'modChunk', '7'),
(114, 1, '2015-03-24 17:44:19', 'chunk_update', 'modChunk', '7'),
(115, 1, '2015-03-24 17:44:30', 'chunk_update', 'modChunk', '7'),
(116, 1, '2015-03-24 17:46:31', 'template_update', 'modTemplate', '4'),
(117, 1, '2015-03-24 17:47:15', 'chunk_update', 'modChunk', '7'),
(118, 1, '2015-03-24 17:49:30', 'template_update', 'modTemplate', '4'),
(119, 1, '2015-03-24 17:49:45', 'template_update', 'modTemplate', '4'),
(120, 1, '2015-03-24 17:50:20', 'template_update', 'modTemplate', '4'),
(121, 1, '2015-03-24 17:50:34', 'template_update', 'modTemplate', '4'),
(122, 1, '2015-03-24 17:50:44', 'template_update', 'modTemplate', '4'),
(123, 1, '2015-03-24 17:51:00', 'template_update', 'modTemplate', '4'),
(124, 1, '2015-03-24 17:51:26', 'template_update', 'modTemplate', '4'),
(125, 1, '2015-03-24 17:51:49', 'template_update', 'modTemplate', '4'),
(126, 1, '2015-03-24 17:53:55', 'resource_create', 'modDocument', '16'),
(127, 1, '2015-03-24 17:55:11', 'resource_update', 'modResource', '16'),
(128, 1, '2015-03-24 17:55:24', 'duplicate_resource', 'modDocument', '17'),
(129, 1, '2015-03-24 17:55:37', 'resource_update', 'modResource', '17'),
(130, 1, '2015-03-24 17:55:51', 'duplicate_resource', 'modDocument', '18'),
(131, 1, '2015-03-24 17:56:05', 'resource_update', 'modResource', '18'),
(132, 1, '2015-03-24 17:56:22', 'resource_update', 'modResource', '18'),
(133, 1, '2015-03-24 17:56:31', 'resource_update', 'modResource', '17'),
(134, 1, '2015-03-24 17:56:39', 'resource_update', 'modResource', '16'),
(135, 1, '2015-03-24 17:58:09', 'chunk_duplicate', 'modChunk', '8'),
(136, 1, '2015-03-24 17:58:45', 'chunk_update', 'modChunk', '8'),
(137, 1, '2015-03-24 17:58:51', 'chunk_update', 'modChunk', '8'),
(138, 1, '2015-03-24 17:59:22', 'template_update', 'modTemplate', '4'),
(139, 1, '2015-03-24 17:59:55', 'template_update', 'modTemplate', '1'),
(140, 1, '2015-03-24 18:00:34', 'template_update', 'modTemplate', '2'),
(141, 1, '2015-03-24 18:00:43', 'template_update', 'modTemplate', '5'),
(142, 1, '2015-03-24 18:00:54', 'template_update', 'modTemplate', '3'),
(143, 1, '2015-03-24 18:05:47', 'template_update', 'modTemplate', '4'),
(144, 1, '2015-03-24 18:05:58', 'template_update', 'modTemplate', '4'),
(145, 1, '2015-03-24 18:08:20', 'template_update', 'modTemplate', '4'),
(146, 1, '2015-03-24 18:11:19', 'chunk_update', 'modChunk', '7'),
(147, 1, '2015-03-24 18:14:41', 'chunk_update', 'modChunk', '5'),
(148, 1, '2015-03-24 18:15:05', 'chunk_update', 'modChunk', '5'),
(149, 1, '2015-03-24 18:15:22', 'chunk_update', 'modChunk', '5'),
(150, 1, '2015-03-24 18:17:10', 'chunk_update', 'modChunk', '5'),
(151, 1, '2015-03-24 18:18:19', 'snippet_create', 'modSnippet', '19'),
(152, 1, '2015-03-24 18:18:51', 'template_update', 'modTemplate', '2'),
(153, 1, '2015-03-24 18:18:57', 'template_update', 'modTemplate', '1'),
(154, 1, '2015-03-24 18:19:03', 'template_update', 'modTemplate', '5'),
(155, 1, '2015-03-24 18:19:09', 'template_update', 'modTemplate', '4'),
(156, 1, '2015-03-24 18:19:15', 'template_update', 'modTemplate', '3'),
(157, 1, '2015-03-24 23:53:04', 'template_duplicate', 'modTemplate', '6'),
(158, 1, '2015-03-24 23:53:25', 'template_update', 'modTemplate', '6'),
(159, 1, '2015-03-24 23:54:14', 'template_update', 'modTemplate', '6'),
(160, 1, '2015-03-24 23:54:29', 'resource_update', 'modResource', '6'),
(161, 1, '2015-03-24 23:56:16', 'template_update', 'modTemplate', '6'),
(162, 1, '2015-03-24 23:56:52', 'template_update', 'modTemplate', '6'),
(163, 1, '2015-03-24 23:58:17', 'template_update', 'modTemplate', '6'),
(164, 1, '2015-03-24 23:59:14', 'template_update', 'modTemplate', '6'),
(165, 1, '2015-03-25 00:06:11', 'chunk_update', 'modChunk', '5'),
(166, 1, '2015-03-25 00:06:35', 'resource_update', 'modResource', '6'),
(167, 1, '2015-03-25 00:07:13', 'chunk_update', 'modChunk', '5'),
(168, 1, '2015-03-25 00:07:46', 'template_update', 'modTemplate', '6'),
(169, 1, '2015-03-25 00:11:05', 'template_update', 'modTemplate', '6'),
(170, 1, '2015-03-25 00:11:49', 'template_update', 'modTemplate', '6'),
(171, 1, '2015-03-25 00:14:06', 'template_update', 'modTemplate', '6'),
(172, 1, '2015-03-25 00:14:36', 'template_update', 'modTemplate', '6'),
(173, 1, '2015-03-25 00:15:07', 'template_update', 'modTemplate', '6'),
(174, 1, '2015-03-25 00:16:12', 'template_update', 'modTemplate', '6'),
(175, 1, '2015-03-25 00:16:23', 'template_update', 'modTemplate', '6'),
(176, 1, '2015-03-25 00:16:39', 'template_update', 'modTemplate', '6'),
(177, 1, '2015-03-25 00:16:54', 'template_update', 'modTemplate', '6'),
(178, 1, '2015-03-25 00:17:00', 'template_update', 'modTemplate', '6'),
(179, 1, '2015-03-25 00:17:19', 'template_update', 'modTemplate', '6'),
(180, 1, '2015-03-25 00:17:29', 'template_update', 'modTemplate', '6'),
(181, 1, '2015-03-25 00:18:34', 'template_update', 'modTemplate', '6'),
(182, 1, '2015-03-25 00:19:21', 'template_update', 'modTemplate', '6'),
(183, 1, '2015-03-25 00:20:05', 'template_update', 'modTemplate', '6'),
(184, 1, '2015-03-25 00:21:02', 'template_update', 'modTemplate', '6'),
(185, 1, '2015-03-25 00:21:33', 'template_update', 'modTemplate', '6'),
(186, 1, '2015-03-25 00:23:51', 'chunk_duplicate', 'modChunk', '9'),
(187, 1, '2015-03-25 00:24:28', 'chunk_update', 'modChunk', '9'),
(188, 1, '2015-03-25 00:24:56', 'template_update', 'modTemplate', '6'),
(189, 1, '2015-03-25 00:25:10', 'template_update', 'modTemplate', '6'),
(190, 1, '2015-03-25 00:25:22', 'chunk_duplicate', 'modChunk', '10'),
(191, 1, '2015-03-25 00:25:31', 'chunk_update', 'modChunk', '10'),
(192, 1, '2015-03-25 00:26:04', 'template_update', 'modTemplate', '6'),
(193, 1, '2015-03-25 00:30:07', 'chunk_update', 'modChunk', '9'),
(194, 1, '2015-03-25 00:44:56', 'template_update', 'modTemplate', '6'),
(195, 1, '2015-03-25 00:54:22', 'chunk_update', 'modChunk', '9'),
(196, 1, '2015-03-25 00:54:33', 'chunk_update', 'modChunk', '2'),
(197, 1, '2015-03-25 00:55:21', 'template_update', 'modTemplate', '6'),
(198, 1, '2015-03-25 00:55:33', 'chunk_update', 'modChunk', '6'),
(199, 1, '2015-03-25 01:00:33', 'template_update', 'modTemplate', '6'),
(200, 1, '2015-03-25 01:07:30', 'template_update', 'modTemplate', '1'),
(201, 1, '2015-03-25 01:07:43', 'template_update', 'modTemplate', '1'),
(202, 1, '2015-03-25 01:08:12', 'template_update', 'modTemplate', '1'),
(203, 1, '2015-03-25 01:19:34', 'category_create', 'modCategory', '5'),
(204, 1, '2015-03-25 01:19:43', 'template_update', 'modTemplate', '4'),
(205, 1, '2015-03-25 01:20:17', 'chunk_update', 'modChunk', '7'),
(206, 1, '2015-03-25 01:36:53', 'template_update', 'modTemplate', '1'),
(207, 1, '2015-03-25 01:37:11', 'template_update', 'modTemplate', '1'),
(208, 1, '2015-03-25 01:37:22', 'chunk_update', 'modChunk', '6'),
(209, 1, '2015-03-25 01:37:32', 'template_update', 'modTemplate', '5'),
(210, 1, '2015-03-25 01:37:42', 'template_update', 'modTemplate', '4'),
(211, 1, '2015-03-25 01:37:53', 'template_update', 'modTemplate', '2'),
(212, 1, '2015-03-25 01:38:05', 'template_update', 'modTemplate', '6'),
(213, 1, '2015-03-25 01:38:12', 'template_update', 'modTemplate', '3'),
(214, 1, '2015-03-25 01:38:37', 'chunk_create', 'modChunk', '11'),
(215, 1, '2015-03-25 01:38:41', 'template_update', 'modTemplate', '3'),
(216, 1, '2015-03-25 01:38:48', 'template_update', 'modTemplate', '6'),
(217, 1, '2015-03-25 01:38:54', 'template_update', 'modTemplate', '1'),
(218, 1, '2015-03-25 01:39:01', 'template_update', 'modTemplate', '2'),
(219, 1, '2015-03-25 01:39:10', 'template_update', 'modTemplate', '4'),
(220, 1, '2015-03-25 01:39:17', 'template_update', 'modTemplate', '5'),
(221, 1, '2015-03-25 01:40:16', 'chunk_update', 'modChunk', '11'),
(222, 1, '2015-03-25 01:40:22', 'chunk_update', 'modChunk', '11'),
(223, 1, '2015-03-25 01:40:38', 'chunk_update', 'modChunk', '4'),
(224, 1, '2015-03-25 01:41:03', 'chunk_update', 'modChunk', '6'),
(225, 1, '2015-03-25 01:41:10', 'chunk_update', 'modChunk', '5'),
(226, 1, '2015-03-25 01:41:54', 'chunk_update', 'modChunk', '3'),
(227, 1, '2015-03-25 01:43:21', 'chunk_update', 'modChunk', '3'),
(228, 1, '2015-03-25 01:43:37', 'chunk_update', 'modChunk', '10'),
(229, 1, '2015-03-25 08:15:55', 'resource_update', 'modResource', '9'),
(230, 1, '2015-03-25 08:16:23', 'resource_update', 'modResource', '10'),
(231, 1, '2015-03-25 08:23:38', 'resource_update', 'modResource', '10'),
(232, 1, '2015-03-25 08:27:45', 'resource_update', 'modResource', '10'),
(233, 1, '2015-03-25 08:31:36', 'resource_update', 'modResource', '10'),
(234, 1, '2015-03-25 08:35:19', 'resource_update', 'modResource', '10'),
(235, 1, '2015-03-25 08:40:52', 'category_create', 'modCategory', '6'),
(236, 1, '2015-03-25 08:41:01', 'template_update', 'modTemplate', '3'),
(237, 1, '2015-03-25 08:41:11', 'category_create', 'modCategory', '7'),
(238, 1, '2015-03-25 08:41:19', 'template_update', 'modTemplate', '6'),
(239, 1, '2015-03-25 08:41:26', 'category_create', 'modCategory', '8'),
(240, 1, '2015-03-25 08:41:34', 'template_update', 'modTemplate', '1'),
(241, 1, '2015-03-25 08:43:23', 'template_update', 'modTemplate', '1'),
(242, 1, '2015-03-25 08:45:53', 'template_update', 'modTemplate', '1'),
(243, 1, '2015-03-25 09:29:40', 'category_create', 'modCategory', '9'),
(244, 1, '2015-03-25 09:30:03', 'template_duplicate', 'modTemplate', '7'),
(245, 1, '2015-03-25 09:30:56', 'template_update', 'modTemplate', '7'),
(246, 1, '2015-03-25 09:33:01', 'template_update', 'modTemplate', '7'),
(247, 1, '2015-03-25 09:33:28', 'template_update', 'modTemplate', '7'),
(248, 1, '2015-03-25 09:34:06', 'template_update', 'modTemplate', '7'),
(249, 1, '2015-03-25 09:34:12', 'template_update', 'modTemplate', '7'),
(250, 1, '2015-03-25 09:34:45', 'template_duplicate', 'modTemplate', '8'),
(251, 1, '2015-03-25 09:34:54', 'template_update', 'modTemplate', '8'),
(252, 1, '2015-03-25 09:34:59', 'template_update', 'modTemplate', '8'),
(253, 1, '2015-03-25 09:35:20', 'resource_update', 'modResource', '3'),
(254, 1, '2015-03-25 09:35:43', 'template_update', 'modTemplate', '7'),
(255, 1, '2015-03-25 09:36:33', 'resource_create', 'modDocument', '19'),
(256, 1, '2015-03-25 09:36:41', 'duplicate_resource', 'modDocument', '20'),
(257, 1, '2015-03-25 09:36:50', 'resource_update', 'modResource', '20'),
(258, 1, '2015-03-25 09:37:54', 'chunk_create', 'modChunk', '12'),
(259, 1, '2015-03-25 09:38:01', 'template_update', 'modTemplate', '7'),
(260, 1, '2015-03-25 09:38:27', 'template_update', 'modTemplate', '7'),
(261, 1, '2015-03-25 09:41:44', 'template_update', 'modTemplate', '7'),
(262, 1, '2015-03-25 09:41:53', 'template_update', 'modTemplate', '7'),
(263, 1, '2015-03-25 09:43:50', 'resource_create', 'modDocument', '21'),
(264, 1, '2015-03-25 09:44:08', 'resource_update', 'modResource', '21'),
(265, 1, '2015-03-25 09:44:26', 'resource_update', 'modResource', '3'),
(266, 1, '2015-03-25 09:45:24', 'chunk_update', 'modChunk', '12'),
(267, 1, '2015-03-25 09:45:51', 'chunk_update', 'modChunk', '12'),
(268, 1, '2015-03-25 09:49:32', 'chunk_update', 'modChunk', '12'),
(269, 1, '2015-03-25 09:51:17', 'chunk_update', 'modChunk', '12'),
(270, 1, '2015-03-25 09:51:33', 'chunk_update', 'modChunk', '12'),
(271, 1, '2015-03-25 09:52:26', 'chunk_update', 'modChunk', '12'),
(272, 1, '2015-03-25 09:53:59', 'chunk_update', 'modChunk', '12'),
(273, 1, '2015-03-25 09:54:08', 'chunk_update', 'modChunk', '12'),
(274, 1, '2015-03-25 10:05:06', 'template_update', 'modTemplate', '7'),
(275, 1, '2015-03-25 10:05:41', 'duplicate_resource', 'modDocument', '22'),
(276, 1, '2015-03-25 10:05:57', 'resource_update', 'modResource', '22'),
(277, 1, '2015-03-25 10:06:45', 'template_update', 'modTemplate', '7'),
(278, 1, '2015-03-25 10:08:44', 'template_update', 'modTemplate', '7'),
(279, 1, '2015-03-25 10:09:23', 'template_update', 'modTemplate', '7'),
(280, 1, '2015-03-25 10:10:54', 'template_update', 'modTemplate', '7'),
(281, 1, '2015-03-25 10:11:46', 'template_update', 'modTemplate', '4'),
(282, 1, '2015-03-25 10:12:36', 'template_update', 'modTemplate', '3'),
(283, 1, '2015-03-25 10:12:43', 'template_update', 'modTemplate', '2'),
(284, 1, '2015-03-25 10:12:52', 'template_update', 'modTemplate', '8'),
(285, 1, '2015-03-25 10:13:00', 'template_update', 'modTemplate', '5'),
(286, 1, '2015-03-25 10:13:35', 'resource_update', 'modResource', '19'),
(287, 1, '2015-03-25 10:13:44', 'resource_update', 'modResource', '20'),
(288, 1, '2015-03-25 10:13:55', 'resource_update', 'modResource', '21'),
(289, 1, '2015-03-25 10:14:00', 'resource_update', 'modResource', '22'),
(290, 1, '2015-03-25 10:15:58', 'chunk_update', 'modChunk', '6'),
(291, 1, '2015-03-25 10:16:27', 'chunk_update', 'modChunk', '6'),
(292, 1, '2015-03-25 10:18:31', 'chunk_update', 'modChunk', '6'),
(293, 1, '2015-03-25 10:21:10', 'chunk_update', 'modChunk', '6'),
(294, 1, '2015-03-25 10:28:07', 'chunk_update', 'modChunk', '6'),
(295, 1, '2015-03-25 10:28:21', 'chunk_update', 'modChunk', '6'),
(296, 1, '2015-03-25 10:47:08', 'collections.template_update', 'CollectionTemplate', '2'),
(297, 1, '2015-03-25 10:47:24', 'resource_update', 'modResource', '19'),
(298, 1, '2015-03-25 10:47:43', 'resource_update', 'modResource', '19'),
(299, 1, '2015-03-25 10:47:48', 'resource_update', 'modResource', '19'),
(300, 1, '2015-03-25 10:48:19', 'resource_update', 'modResource', '20'),
(301, 1, '2015-03-25 10:48:26', 'resource_update', 'modResource', '20'),
(302, 1, '2015-03-25 10:49:18', 'collections.template_update', 'CollectionTemplate', '2'),
(303, 1, '2015-03-25 10:50:08', 'collections.template_update', 'CollectionTemplate', '3'),
(304, 1, '2015-03-25 10:50:41', 'collections.template_update', 'CollectionTemplate', '3'),
(305, 1, '2015-03-25 10:50:52', 'resource_update', 'modResource', '12'),
(306, 1, '2015-03-25 10:51:00', 'resource_update', 'modResource', '12'),
(307, 1, '2015-03-25 10:51:17', 'resource_update', 'modResource', '13'),
(308, 1, '2015-03-25 10:51:26', 'resource_update', 'modResource', '13'),
(309, 1, '2015-03-25 10:52:23', 'delete_resource', 'modDocument', '22'),
(310, 1, '2015-03-25 11:06:57', 'directory_create', '', '/var/www/www/visualisation.wi6.ru/assets/reportfiles'),
(311, 1, '2015-03-25 11:07:12', 'setting_update', 'modSystemSetting', 'fileattach.files_path'),
(312, 1, '2015-03-25 11:07:34', 'setting_update', 'modSystemSetting', 'fileattach.put_docid'),
(313, 1, '2015-03-25 11:08:39', 'setting_update', 'modSystemSetting', 'fileattach.templates'),
(314, 1, '2015-03-25 11:09:09', 'directory_create', '', '/var/www/www/visualisation.wi6.ru/assets/reportfiles/21/'),
(315, 1, '2015-03-25 11:09:09', 'file_upload', '', '/var/www/www/visualisation.wi6.ru/assets/reportfiles/21/'),
(316, 1, '2015-03-25 11:11:36', 'chunk_update', 'modChunk', '12'),
(317, 1, '2015-03-25 11:13:09', 'chunk_update', 'modChunk', '13'),
(318, 1, '2015-03-25 11:13:46', 'FileItem_update', 'FileItem', '1'),
(319, 1, '2015-03-25 11:14:27', 'chunk_update', 'modChunk', '13'),
(320, 1, '2015-03-25 11:15:02', 'chunk_update', 'modChunk', '13'),
(321, 1, '2015-03-25 11:15:17', 'chunk_update', 'modChunk', '13'),
(322, 1, '2015-03-25 11:15:35', 'file_upload', '', '/var/www/www/visualisation.wi6.ru/assets/reportfiles/21/'),
(323, 1, '2015-03-25 11:15:35', 'file_upload', '', '/var/www/www/visualisation.wi6.ru/assets/reportfiles/21/'),
(324, 1, '2015-03-25 11:15:35', 'file_upload', '', '/var/www/www/visualisation.wi6.ru/assets/reportfiles/21/'),
(325, 1, '2015-03-25 11:15:36', 'file_upload', '', '/var/www/www/visualisation.wi6.ru/assets/reportfiles/21/'),
(326, 1, '2015-03-25 11:15:36', 'file_upload', '', '/var/www/www/visualisation.wi6.ru/assets/reportfiles/21/'),
(327, 1, '2015-03-25 11:15:36', 'file_upload', '', '/var/www/www/visualisation.wi6.ru/assets/reportfiles/21/'),
(328, 1, '2015-03-25 11:16:00', 'resource_update', 'modResource', '21'),
(329, 1, '2015-03-25 11:16:33', 'chunk_update', 'modChunk', '13'),
(330, 1, '2015-03-25 11:17:08', 'chunk_update', 'modChunk', '13'),
(331, 1, '2015-03-25 11:17:58', 'chunk_update', 'modChunk', '12'),
(332, 1, '2015-03-25 11:18:59', 'chunk_update', 'modChunk', '13'),
(333, 1, '2015-03-25 12:03:30', 'template_update', 'modTemplate', '1'),
(334, 1, '2015-03-25 12:03:46', 'chunk_update', 'modChunk', '4'),
(335, 1, '2015-03-25 12:05:10', 'template_update', 'modTemplate', '1'),
(336, 1, '2015-03-25 12:21:02', 'chunk_update', 'modChunk', '6'),
(337, 1, '2015-03-25 12:21:04', 'chunk_update', 'modChunk', '11'),
(338, 1, '2015-03-25 12:26:05', 'chunk_update', 'modChunk', '11'),
(339, 1, '2015-03-25 12:34:50', 'chunk_update', 'modChunk', '4'),
(340, 1, '2015-03-25 12:35:14', 'chunk_update', 'modChunk', '4'),
(341, 1, '2015-03-25 12:36:15', 'chunk_update', 'modChunk', '11'),
(342, 1, '2015-03-25 12:37:56', 'chunk_update', 'modChunk', '11'),
(343, 1, '2015-03-25 12:38:58', 'chunk_update', 'modChunk', '11'),
(344, 1, '2015-03-25 12:39:51', 'chunk_update', 'modChunk', '11'),
(345, 1, '2015-03-25 12:40:43', 'chunk_update', 'modChunk', '4'),
(346, 1, '2015-03-25 12:40:53', 'chunk_update', 'modChunk', '4'),
(347, 1, '2015-03-25 13:16:46', 'template_update', 'modTemplate', '1'),
(348, 1, '2015-03-25 13:19:02', 'template_update', 'modTemplate', '1'),
(349, 1, '2015-03-25 13:21:54', 'template_update', 'modTemplate', '1'),
(350, 1, '2015-03-25 13:23:40', 'template_update', 'modTemplate', '1'),
(351, 1, '2015-03-25 13:23:52', 'template_update', 'modTemplate', '1'),
(352, 1, '2015-03-25 13:25:26', 'template_update', 'modTemplate', '1'),
(353, 1, '2015-03-25 13:25:51', 'template_update', 'modTemplate', '1'),
(354, 1, '2015-03-25 13:28:59', 'file_upload', '', '/var/www/www/visualisation.wi6.ru/assets/img/'),
(355, 1, '2015-03-25 13:29:17', 'template_update', 'modTemplate', '1'),
(356, 1, '2015-03-25 13:29:50', 'file_remove', '', '/var/www/www/visualisation.wi6.ru/assets/img/tab-panel-logo-ir.png'),
(357, 1, '2015-03-25 13:29:55', 'file_upload', '', '/var/www/www/visualisation.wi6.ru/assets/img/'),
(358, 1, '2015-03-25 13:32:27', 'template_update', 'modTemplate', '1'),
(359, 1, '2015-03-25 13:33:00', 'template_update', 'modTemplate', '1'),
(360, 1, '2015-03-25 13:33:28', 'template_update', 'modTemplate', '1'),
(361, 1, '2015-03-25 13:35:35', 'template_update', 'modTemplate', '1'),
(362, 1, '2015-03-25 13:36:55', 'file_upload', '', '/var/www/www/visualisation.wi6.ru/assets/img/'),
(363, 1, '2015-03-25 13:42:43', 'tv_create', 'modTemplateVar', '1'),
(364, 1, '2015-03-25 13:43:03', 'tv_update', 'modTemplateVar', '1'),
(365, 1, '2015-03-25 13:45:23', 'template_update', 'modTemplate', '1'),
(366, 1, '2015-03-25 13:45:46', 'template_update', 'modTemplate', '1'),
(367, 1, '2015-03-25 13:52:13', 'template_update', 'modTemplate', '1'),
(368, 1, '2015-03-25 13:53:00', 'template_update', 'modTemplate', '1'),
(369, 1, '2015-03-25 13:54:04', 'template_update', 'modTemplate', '1'),
(370, 1, '2015-03-25 13:54:38', 'template_update', 'modTemplate', '1'),
(371, 1, '2015-03-25 13:55:36', 'resource_update', 'modResource', '1'),
(372, 1, '2015-03-25 13:56:07', 'template_update', 'modTemplate', '1'),
(373, 1, '2015-03-25 13:56:21', 'template_update', 'modTemplate', '1'),
(374, 1, '2015-03-25 13:57:58', 'template_update', 'modTemplate', '1'),
(375, 1, '2015-03-25 13:59:44', 'resource_update', 'modResource', '1'),
(376, 1, '2015-03-25 14:00:37', 'resource_update', 'modResource', '1'),
(377, 1, '2015-03-25 14:01:48', 'resource_update', 'modResource', '1'),
(378, 1, '2015-03-25 14:07:21', 'resource_update', 'modResource', '1'),
(379, 1, '2015-03-25 14:08:02', 'resource_update', 'modResource', '1'),
(380, 1, '2015-03-25 14:11:24', 'resource_update', 'modResource', '1'),
(381, 1, '2015-03-25 14:12:29', 'resource_update', 'modResource', '1'),
(382, 1, '2015-03-25 14:16:43', 'resource_update', 'modResource', '1'),
(383, 1, '2015-03-25 14:17:34', 'resource_update', 'modResource', '1'),
(384, 1, '2015-03-25 14:18:43', 'template_update', 'modTemplate', '1'),
(385, 1, '2015-03-25 14:19:04', 'resource_update', 'modResource', '1'),
(386, 1, '2015-03-25 14:22:48', 'resource_update', 'modResource', '1'),
(387, 1, '2015-03-25 14:23:57', 'resource_update', 'modResource', '1'),
(388, 1, '2015-03-25 14:26:16', 'resource_update', 'modResource', '1'),
(389, 1, '2015-03-25 14:27:07', 'resource_update', 'modResource', '1'),
(390, 1, '2015-03-25 14:29:03', 'resource_update', 'modResource', '1'),
(391, 1, '2015-03-25 14:33:05', 'resource_update', 'modResource', '1'),
(392, 1, '2015-03-25 14:34:09', 'resource_update', 'modResource', '1'),
(393, 1, '2015-03-25 14:34:33', 'resource_update', 'modResource', '1'),
(394, 1, '2015-03-25 14:40:58', 'resource_update', 'modResource', '1'),
(395, 1, '2015-03-25 14:44:21', 'resource_update', 'modResource', '1'),
(396, 1, '2015-03-25 14:44:30', 'resource_update', 'modResource', '1'),
(397, 1, '2015-03-25 14:45:11', 'resource_update', 'modResource', '1'),
(398, 1, '2015-03-25 14:45:27', 'resource_update', 'modResource', '1'),
(399, 1, '2015-03-25 14:47:21', 'resource_update', 'modResource', '1'),
(400, 1, '2015-03-25 14:48:52', 'resource_update', 'modResource', '1'),
(401, 1, '2015-03-25 14:50:27', 'resource_update', 'modResource', '1'),
(402, 1, '2015-03-25 14:51:04', 'resource_update', 'modResource', '1'),
(403, 1, '2015-03-25 14:52:19', 'resource_update', 'modResource', '1'),
(404, 1, '2015-03-25 14:52:49', 'resource_update', 'modResource', '1'),
(405, 1, '2015-03-25 14:52:53', 'resource_update', 'modResource', '1'),
(406, 1, '2015-03-25 14:53:39', 'resource_update', 'modResource', '1'),
(407, 1, '2015-03-25 14:54:23', 'resource_update', 'modResource', '1'),
(408, 1, '2015-03-25 14:54:59', 'resource_update', 'modResource', '1'),
(409, 1, '2015-03-25 14:55:54', 'resource_update', 'modResource', '1'),
(410, 1, '2015-03-25 14:56:38', 'resource_update', 'modResource', '1'),
(411, 1, '2015-03-25 14:57:23', 'resource_update', 'modResource', '1'),
(412, 1, '2015-03-25 14:57:47', 'resource_update', 'modResource', '1'),
(413, 1, '2015-03-25 14:58:36', 'resource_update', 'modResource', '1'),
(414, 1, '2015-03-25 14:59:18', 'resource_update', 'modResource', '1'),
(415, 1, '2015-03-25 14:59:59', 'resource_update', 'modResource', '1'),
(416, 1, '2015-03-25 15:00:49', 'chunk_update', 'modChunk', '11'),
(417, 1, '2015-03-25 15:09:54', 'resource_update', 'modResource', '2'),
(418, 1, '2015-03-25 15:10:14', 'resource_update', 'modResource', '2'),
(419, 1, '2015-03-25 15:11:31', 'resource_update', 'modResource', '2'),
(420, 1, '2015-03-25 15:11:35', 'resource_update', 'modResource', '9'),
(421, 1, '2015-03-25 15:13:08', 'resource_update', 'modResource', '9'),
(422, 1, '2015-03-25 15:13:18', 'resource_update', 'modResource', '9'),
(423, 1, '2015-03-25 15:13:35', 'chunk_update', 'modChunk', '11'),
(424, 1, '2015-03-25 15:13:47', 'chunk_update', 'modChunk', '6'),
(425, 1, '2015-03-25 15:14:40', 'resource_update', 'modResource', '9'),
(426, 1, '2015-03-25 15:15:38', 'resource_update', 'modResource', '9'),
(427, 1, '2015-03-25 15:17:59', 'resource_update', 'modResource', '9'),
(428, 1, '2015-03-25 15:18:16', 'resource_update', 'modResource', '9'),
(429, 1, '2015-03-25 15:20:34', 'collections.template_update', 'CollectionTemplate', '4'),
(430, 1, '2015-03-25 15:20:43', 'collections.template_update', 'CollectionTemplate', '4'),
(431, 1, '2015-03-25 15:20:58', 'resource_update', 'modResource', '8'),
(432, 1, '2015-03-25 15:21:07', 'resource_update', 'modResource', '8'),
(433, 1, '2015-03-25 15:22:15', 'resource_create', 'modDocument', '23'),
(434, 1, '2015-03-25 15:23:02', 'template_duplicate', 'modTemplate', '9'),
(435, 1, '2015-03-25 15:23:32', 'template_duplicate', 'modTemplate', '10'),
(436, 1, '2015-03-25 15:23:50', 'resource_update', 'modResource', '9'),
(437, 1, '2015-03-25 15:24:19', 'resource_update', 'modResource', '9'),
(438, 1, '2015-03-25 15:24:49', 'template_update', 'modTemplate', '9'),
(439, 1, '2015-03-25 15:24:55', 'resource_update', 'modResource', '9'),
(440, 1, '2015-03-25 15:25:09', 'resource_update', 'modResource', '8'),
(441, 1, '2015-03-25 15:25:43', 'resource_update', 'modResource', '23'),
(442, 1, '2015-03-25 15:26:39', 'template_update', 'modTemplate', '10'),
(443, 1, '2015-03-25 15:28:22', 'resource_update', 'modResource', '10'),
(444, 1, '2015-03-25 15:29:25', 'resource_update', 'modResource', '10'),
(445, 1, '2015-03-25 15:29:47', 'resource_update', 'modResource', '10'),
(446, 1, '2015-03-25 15:30:24', 'template_update', 'modTemplate', '10'),
(447, 1, '2015-03-25 15:31:56', 'resource_update', 'modResource', '23'),
(448, 1, '2015-03-25 15:33:36', 'resource_update', 'modResource', '10'),
(449, 1, '2015-03-25 15:33:50', 'resource_update', 'modResource', '10'),
(450, 1, '2015-03-25 15:34:27', 'resource_update', 'modResource', '23'),
(451, 1, '2015-03-25 15:36:04', 'resource_update', 'modResource', '11'),
(452, 1, '2015-03-25 15:36:16', 'resource_update', 'modResource', '11'),
(453, 1, '2015-03-25 15:43:00', 'resource_update', 'modResource', '23'),
(454, 1, '2015-03-25 15:44:58', 'resource_update', 'modResource', '4'),
(455, 1, '2015-03-25 15:47:34', 'delete_resource', 'modDocument', '15'),
(456, 1, '2015-03-25 16:01:08', 'resource_update', 'modResource', '23'),
(457, 1, '2015-03-25 16:01:54', 'resource_update', 'modResource', '23'),
(458, 1, '2015-03-25 16:02:26', 'resource_update', 'modResource', '23'),
(459, 1, '2015-03-25 16:03:12', 'resource_update', 'modResource', '23'),
(460, 1, '2015-03-25 16:04:57', 'resource_update', 'modResource', '23'),
(461, 1, '2015-03-25 16:05:17', 'resource_update', 'modResource', '23'),
(462, 1, '2015-03-25 16:10:27', 'resource_update', 'modResource', '23'),
(463, 1, '2015-03-25 16:12:03', 'resource_update', 'modResource', '23'),
(464, 1, '2015-03-25 16:12:55', 'resource_update', 'modResource', '23'),
(465, 1, '2015-03-25 16:13:46', 'resource_update', 'modResource', '23'),
(466, 1, '2015-03-25 16:15:09', 'resource_update', 'modResource', '23'),
(467, 1, '2015-03-25 16:21:28', 'resource_update', 'modResource', '23'),
(468, 1, '2015-03-25 16:23:44', 'resource_update', 'modResource', '23'),
(469, 1, '2015-03-25 16:25:35', 'resource_update', 'modResource', '23'),
(470, 1, '2015-03-25 16:27:05', 'resource_update', 'modResource', '23'),
(471, 1, '2015-03-25 16:28:29', 'resource_update', 'modResource', '23'),
(472, 1, '2015-03-25 16:49:58', 'resource_update', 'modResource', '23'),
(473, 1, '2015-03-26 09:21:40', 'file_update', '', '/var/www/www/visualisation.wi6.ru/.htaccess'),
(474, 1, '2015-03-26 11:52:20', 'chunk_update', 'modChunk', '11'),
(475, 1, '2015-03-26 15:31:21', 'chunk_update', 'modChunk', '12'),
(476, 1, '2015-03-26 15:32:40', 'chunk_update', 'modChunk', '12'),
(477, 1, '2015-03-26 15:33:17', 'chunk_update', 'modChunk', '12'),
(478, 1, '2015-03-26 16:07:41', 'chunk_update', 'modChunk', '12'),
(479, 1, '2015-03-26 16:09:41', 'chunk_update', 'modChunk', '12'),
(480, 1, '2015-03-26 16:10:03', 'category_create', 'modCategory', '14'),
(481, 1, '2015-03-26 16:10:25', 'template_update', 'modTemplate', '9'),
(482, 1, '2015-03-26 16:10:30', 'template_update', 'modTemplate', '9'),
(483, 1, '2015-03-26 16:10:50', 'template_update', 'modTemplate', '10'),
(484, 1, '2015-03-26 16:11:06', 'template_update', 'modTemplate', '10'),
(485, 1, '2015-03-26 16:11:10', 'template_update', 'modTemplate', '10'),
(486, 1, '2015-03-26 16:11:14', 'template_update', 'modTemplate', '10'),
(487, 1, '2015-03-26 16:11:21', 'template_update', 'modTemplate', '10'),
(488, 1, '2015-03-26 16:12:28', 'chunk_update', 'modChunk', '5'),
(489, 1, '2015-03-26 16:13:34', 'chunk_update', 'modChunk', '6'),
(490, 1, '2015-03-26 16:14:12', 'chunk_update', 'modChunk', '11'),
(491, 1, '2015-03-26 16:15:06', 'chunk_update', 'modChunk', '4'),
(492, 1, '2015-03-26 16:16:19', 'chunk_update', 'modChunk', '6'),
(493, 1, '2015-03-26 16:40:08', 'chunk_update', 'modChunk', '6'),
(494, 1, '2015-03-26 16:42:44', 'chunk_update', 'modChunk', '3'),
(495, 1, '2015-03-26 16:43:46', 'chunk_update', 'modChunk', '3'),
(496, 1, '2015-03-26 16:46:47', 'chunk_update', 'modChunk', '3'),
(497, 1, '2015-03-26 16:48:04', 'chunk_update', 'modChunk', '3'),
(498, 1, '2015-03-26 16:51:13', 'chunk_update', 'modChunk', '10'),
(499, 1, '2015-03-26 17:04:58', 'template_update', 'modTemplate', '1'),
(500, 1, '2015-03-26 17:06:09', 'template_update', 'modTemplate', '1'),
(501, 1, '2015-03-26 17:07:09', 'template_update', 'modTemplate', '1'),
(502, 1, '2015-03-26 17:07:27', 'template_update', 'modTemplate', '1'),
(503, 1, '2015-03-26 17:21:17', 'chunk_update', 'modChunk', '6'),
(504, 1, '2015-03-26 17:21:27', 'chunk_update', 'modChunk', '9'),
(505, 1, '2015-03-26 17:21:38', 'chunk_update', 'modChunk', '6'),
(506, 1, '2015-03-26 17:21:44', 'chunk_update', 'modChunk', '2'),
(507, 1, '2015-03-26 17:22:11', 'chunk_update', 'modChunk', '2'),
(508, 1, '2015-03-26 17:22:40', 'chunk_update', 'modChunk', '3'),
(509, 1, '2015-03-27 09:23:30', 'resource_update', 'modResource', '8'),
(510, 1, '2015-03-27 09:24:22', 'resource_update', 'modResource', '8'),
(511, 1, '2015-03-27 09:24:56', 'resource_update', 'modResource', '8'),
(512, 1, '2015-03-27 09:28:12', 'resource_update', 'modResource', '8'),
(513, 1, '2015-03-27 09:28:57', 'resource_update', 'modResource', '8'),
(514, 1, '2015-03-27 09:29:40', 'resource_update', 'modResource', '8'),
(515, 1, '2015-03-27 09:30:57', 'resource_update', 'modResource', '8'),
(516, 1, '2015-03-27 09:35:59', 'resource_update', 'modResource', '8'),
(517, 1, '2015-03-27 09:36:59', 'resource_update', 'modResource', '8'),
(518, 1, '2015-03-27 09:37:38', 'resource_update', 'modResource', '8'),
(519, 1, '2015-03-27 09:39:49', 'resource_update', 'modResource', '8'),
(520, 1, '2015-03-27 09:40:10', 'resource_update', 'modResource', '8'),
(521, 1, '2015-03-27 09:40:37', 'resource_update', 'modResource', '8'),
(522, 1, '2015-03-27 09:42:00', 'resource_update', 'modResource', '8'),
(523, 1, '2015-03-27 09:42:36', 'resource_update', 'modResource', '8'),
(524, 1, '2015-03-27 09:42:53', 'resource_update', 'modResource', '8'),
(525, 1, '2015-03-27 09:43:01', 'resource_update', 'modResource', '8'),
(526, 1, '2015-03-27 09:43:14', 'resource_update', 'modResource', '8'),
(527, 1, '2015-03-27 09:43:24', 'resource_update', 'modResource', '8'),
(528, 1, '2015-03-27 09:43:39', 'resource_update', 'modResource', '8'),
(529, 1, '2015-03-27 09:44:51', 'resource_update', 'modResource', '8'),
(530, 1, '2015-03-27 09:46:58', 'resource_update', 'modResource', '8'),
(531, 1, '2015-03-27 09:47:27', 'resource_update', 'modResource', '8'),
(532, 1, '2015-03-27 09:47:43', 'resource_update', 'modResource', '8'),
(533, 1, '2015-03-27 09:49:53', 'resource_update', 'modResource', '8'),
(534, 1, '2015-03-27 09:52:57', 'resource_update', 'modResource', '8'),
(535, 1, '2015-03-27 09:53:12', 'resource_update', 'modResource', '8'),
(536, 1, '2015-03-27 09:53:29', 'resource_update', 'modResource', '8'),
(537, 1, '2015-03-27 09:53:39', 'resource_update', 'modResource', '8'),
(538, 1, '2015-03-27 09:53:51', 'resource_update', 'modResource', '8'),
(539, 1, '2015-03-27 10:10:04', 'resource_update', 'modResource', '23'),
(540, 1, '2015-03-27 10:10:47', 'resource_update', 'modResource', '23'),
(541, 1, '2015-03-27 10:11:13', 'resource_update', 'modResource', '23'),
(542, 1, '2015-03-27 10:11:35', 'resource_update', 'modResource', '23'),
(543, 1, '2015-03-27 10:11:48', 'resource_update', 'modResource', '23'),
(544, 1, '2015-03-27 10:12:07', 'resource_update', 'modResource', '23'),
(545, 1, '2015-03-27 10:14:05', 'resource_update', 'modResource', '23'),
(546, 1, '2015-03-27 10:14:19', 'resource_update', 'modResource', '9'),
(547, 1, '2015-03-27 10:14:43', 'template_update', 'modTemplate', '1'),
(548, 1, '2015-03-27 10:16:03', 'resource_update', 'modResource', '23'),
(549, 1, '2015-03-27 10:16:24', 'resource_update', 'modResource', '23'),
(550, 1, '2015-03-27 10:16:49', 'resource_update', 'modResource', '23'),
(551, 1, '2015-03-27 10:17:38', 'resource_update', 'modResource', '23'),
(552, 1, '2015-03-27 10:18:03', 'resource_update', 'modResource', '23'),
(553, 1, '2015-03-27 10:18:27', 'resource_update', 'modResource', '23'),
(554, 1, '2015-03-27 10:18:45', 'resource_update', 'modResource', '23'),
(555, 1, '2015-03-27 10:19:37', 'resource_update', 'modResource', '23'),
(556, 1, '2015-03-27 10:20:04', 'resource_update', 'modResource', '23'),
(557, 1, '2015-03-27 10:20:20', 'resource_update', 'modResource', '23'),
(558, 1, '2015-03-27 10:20:38', 'resource_update', 'modResource', '23'),
(559, 1, '2015-03-27 10:21:08', 'resource_update', 'modResource', '23'),
(560, 1, '2015-03-27 10:22:12', 'resource_update', 'modResource', '23'),
(561, 1, '2015-03-27 10:23:28', 'resource_update', 'modResource', '23'),
(562, 1, '2015-03-27 10:23:49', 'resource_update', 'modResource', '23'),
(563, 1, '2015-03-27 10:24:27', 'resource_update', 'modResource', '23'),
(564, 1, '2015-03-27 10:27:02', 'resource_update', 'modResource', '23'),
(565, 1, '2015-03-27 10:28:57', 'resource_update', 'modResource', '23'),
(566, 1, '2015-03-27 10:29:19', 'resource_update', 'modResource', '23'),
(567, 1, '2015-03-27 10:29:55', 'resource_update', 'modResource', '23'),
(568, 1, '2015-03-27 10:34:32', 'resource_update', 'modResource', '23'),
(569, 1, '2015-03-27 10:34:51', 'resource_update', 'modResource', '23'),
(570, 1, '2015-03-27 10:34:58', 'resource_update', 'modResource', '23'),
(571, 1, '2015-03-27 10:35:55', 'template_update', 'modTemplate', '1'),
(572, 1, '2015-03-27 10:36:18', 'template_update', 'modTemplate', '1'),
(573, 1, '2015-03-27 10:36:59', 'resource_update', 'modResource', '23'),
(574, 1, '2015-03-27 10:37:01', 'resource_update', 'modResource', '23'),
(575, 1, '2015-03-27 10:39:48', 'resource_update', 'modResource', '23'),
(576, 1, '2015-03-27 10:39:50', 'template_update', 'modTemplate', '1'),
(577, 1, '2015-03-27 10:40:32', 'resource_update', 'modResource', '23'),
(578, 1, '2015-03-27 10:47:53', 'resource_update', 'modResource', '23'),
(579, 1, '2015-03-27 10:48:12', 'resource_update', 'modResource', '23'),
(580, 1, '2015-03-27 10:49:50', 'resource_update', 'modResource', '23'),
(581, 1, '2015-03-27 10:50:33', 'resource_update', 'modResource', '23'),
(582, 1, '2015-03-27 10:50:36', 'resource_update', 'modResource', '23'),
(583, 1, '2015-03-30 09:28:43', 'chunk_update', 'modChunk', '6'),
(584, 1, '2015-03-30 09:30:03', 'chunk_update', 'modChunk', '6'),
(585, 1, '2015-03-30 09:31:46', 'template_update', 'modTemplate', '6'),
(586, 1, '2015-03-30 09:31:50', 'template_update', 'modTemplate', '6'),
(587, 1, '2015-03-30 09:34:18', 'resource_update', 'modResource', '14'),
(588, 1, '2015-03-30 09:34:33', 'resource_update', 'modResource', '16'),
(589, 1, '2015-03-30 09:34:46', 'resource_update', 'modResource', '17'),
(590, 1, '2015-03-30 09:35:21', 'resource_update', 'modResource', '18'),
(591, 1, '2015-03-30 09:36:40', 'resource_update', 'modResource', '4'),
(592, 1, '2015-03-30 09:38:05', 'resource_update', 'modResource', '7'),
(593, 1, '2015-03-30 09:39:45', 'resource_update', 'modResource', '11'),
(594, 1, '2015-03-30 09:44:37', 'resource_update', 'modResource', '9'),
(595, 1, '2015-03-30 09:44:59', 'resource_update', 'modResource', '9'),
(596, 1, '2015-03-30 09:47:14', 'resource_update', 'modResource', '9'),
(597, 1, '2015-03-30 09:49:48', 'resource_update', 'modResource', '1'),
(598, 1, '2015-03-30 09:50:52', 'template_update', 'modTemplate', '1'),
(599, 1, '2015-03-30 09:51:23', 'template_update', 'modTemplate', '1'),
(600, 1, '2015-03-30 09:51:35', 'template_update', 'modTemplate', '1'),
(601, 1, '2015-03-30 09:51:56', 'template_update', 'modTemplate', '1'),
(602, 1, '2015-03-30 09:53:23', 'template_update', 'modTemplate', '1'),
(603, 1, '2015-03-30 09:58:42', 'template_update', 'modTemplate', '1'),
(604, 1, '2015-03-30 09:59:01', 'template_update', 'modTemplate', '1'),
(605, 1, '2015-03-30 09:59:14', 'template_update', 'modTemplate', '1'),
(606, 1, '2015-03-30 10:01:07', 'template_update', 'modTemplate', '1'),
(607, 1, '2015-03-30 10:01:24', 'template_update', 'modTemplate', '1'),
(608, 1, '2015-03-30 10:15:25', 'resource_update', 'modResource', '8'),
(609, 1, '2015-03-30 10:19:14', 'resource_update', 'modResource', '23'),
(610, 1, '2015-03-30 10:23:10', 'setting_update', 'modSystemSetting', 'site_name'),
(611, 1, '2015-03-30 10:23:34', 'chunk_update', 'modChunk', '6'),
(612, 1, '2015-03-30 11:40:06', 'template_update', 'modTemplate', '1'),
(613, 1, '2015-03-30 11:40:27', 'template_update', 'modTemplate', '1'),
(614, 1, '2015-03-30 11:49:22', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/img/work-mech-5.png'),
(615, 1, '2015-03-30 11:49:25', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/img/work-mech-4.png'),
(616, 1, '2015-03-30 11:49:28', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/img/work-mech-3.png'),
(617, 1, '2015-03-30 11:49:32', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/img/work-mech-2.png'),
(618, 1, '2015-03-30 11:49:35', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/img/work-mech-1.png'),
(619, 1, '2015-03-30 11:49:38', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/img/toogle-tab-1-pic.png'),
(620, 1, '2015-03-30 11:49:41', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/img/toggle-tab-1-2-pic.jpg'),
(621, 1, '2015-03-30 11:49:50', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/img/section-header-bg.png'),
(622, 1, '2015-03-31 09:04:49', 'setting_update', 'modSystemSetting', 'emailsender'),
(623, 1, '2015-03-31 09:06:03', 'save_profile', 'modUser', '1'),
(624, 1, '2015-03-31 09:06:44', 'save_profile', 'modUser', '1'),
(625, 1, '2015-03-31 09:38:16', 'template_update', 'modTemplate', '1'),
(626, 1, '2015-03-31 09:39:07', 'resource_update', 'modResource', '16'),
(627, 1, '2015-03-31 09:39:39', 'resource_update', 'modResource', '17'),
(628, 1, '2015-03-31 09:40:19', 'resource_update', 'modResource', '17'),
(629, 1, '2015-03-31 09:40:44', 'resource_update', 'modResource', '18'),
(630, 1, '2015-03-31 09:43:02', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/img/tab-panel-logo-tgu.png'),
(631, 1, '2015-03-31 09:43:08', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/img/tab-panel-logo-ir.png'),
(632, 1, '2015-03-31 09:43:14', 'file_upload', '', '/var/www/www/project-template.wi6.ru/assets/img/'),
(633, 1, '2015-03-31 09:44:34', 'template_update', 'modTemplate', '1'),
(634, 1, '2015-03-31 09:45:47', 'template_update', 'modTemplate', '1'),
(635, 1, '2015-03-31 09:46:30', 'template_update', 'modTemplate', '1'),
(636, 1, '2015-03-31 09:47:58', 'resource_update', 'modResource', '7'),
(637, 1, '2015-03-31 09:48:10', 'resource_update', 'modResource', '7'),
(638, 1, '2015-03-31 09:49:26', 'resource_update', 'modResource', '8'),
(639, 1, '2015-03-31 09:50:56', 'resource_update', 'modResource', '23'),
(640, 1, '2015-03-31 09:52:20', 'resource_update', 'modResource', '23'),
(641, 1, '2015-03-31 09:52:34', 'resource_update', 'modResource', '23'),
(642, 1, '2015-03-31 09:54:16', 'resource_update', 'modResource', '9'),
(643, 1, '2015-03-31 09:56:55', 'resource_update', 'modResource', '10'),
(644, 1, '2015-03-31 09:57:27', 'resource_update', 'modResource', '23'),
(645, 1, '2015-03-31 09:58:04', 'resource_update', 'modResource', '11'),
(646, 1, '2015-03-31 09:59:59', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/14.579.21.0088-1.1-Отчет о ПНИЭР-вер2.pdf'),
(647, 1, '2015-03-31 10:00:01', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/14.579.21.0088-Этап 1-Форма И9-вер2.pdf'),
(648, 1, '2015-03-31 10:00:03', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/14.579.21.0088-Этап 1-Форма И5-вер2.pdf'),
(649, 1, '2015-03-31 10:00:06', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/14.579.21.0088-Этап 1-Форма И2-вер2.pdf'),
(650, 1, '2015-03-31 10:00:09', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/14.579.21.0088-Этап 1-Форма И1-вер2.pdf'),
(651, 1, '2015-03-31 10:00:11', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/14.579.21.0088-Этап 1-Форма Д1-вер2.pdf'),
(652, 1, '2015-03-31 10:00:19', 'file_upload', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/'),
(653, 1, '2015-03-31 10:00:23', 'file_remove', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/14.579.21.0088-Этап 1-3-Выписка из протокола НТС-вер2.pdf'),
(654, 1, '2015-03-31 10:00:38', 'file_upload', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/'),
(655, 1, '2015-03-31 10:00:50', 'FileItem_update', 'FileItem', '8'),
(656, 1, '2015-03-31 10:00:57', 'FileItem_update', 'FileItem', '9'),
(657, 1, '2015-03-31 10:00:59', 'resource_update', 'modResource', '21'),
(658, 1, '2015-03-31 10:02:17', 'resource_update', 'modResource', '4'),
(659, 1, '2015-03-31 10:04:02', 'duplicate_resource', 'modDocument', '24'),
(660, 1, '2015-03-31 10:04:43', 'resource_update', 'modResource', '24'),
(661, 1, '2015-03-31 10:05:09', 'resource_update', 'modResource', '14'),
(662, 1, '2015-03-31 10:57:40', 'resource_update', 'modResource', '16'),
(663, 1, '2015-03-31 10:58:03', 'resource_update', 'modResource', '18'),
(664, 1, '2015-04-13 08:35:20', 'object_create', 'cgGroup', '1'),
(665, 1, '2015-04-13 08:35:51', 'object_create', 'cgGroup', '2'),
(666, 1, '2015-04-13 08:37:39', 'object_create', 'cgSetting', '1'),
(667, 1, '2015-04-13 08:38:53', 'object_create', 'cgSetting', '2'),
(668, 1, '2015-04-13 08:39:00', 'object_update', 'cgSetting', '2'),
(669, 1, '2015-04-13 08:40:11', 'object_create', 'cgSetting', '3'),
(670, 1, '2015-04-13 08:40:34', 'object_create', 'cgSetting', '4'),
(671, 1, '2015-04-13 08:40:40', 'object_update', 'cgSetting', '4'),
(672, 1, '2015-04-13 08:40:47', 'object_update', 'cgSetting', '3'),
(673, 1, '2015-04-13 08:41:21', 'object_create', 'cgSetting', '5'),
(674, 1, '2015-04-13 08:43:22', 'object_update', 'cgSetting', '5'),
(675, 1, '2015-04-13 08:44:42', 'object_create', 'cgSetting', '6'),
(676, 1, '2015-04-13 08:44:49', 'object_update', 'cgSetting', '6'),
(677, 1, '2015-04-13 08:45:01', 'chunk_update', 'modChunk', '6'),
(678, 1, '2015-04-13 08:45:35', 'object_create', 'cgSetting', '7'),
(679, 1, '2015-04-13 08:45:43', 'object_update', 'cgSetting', '7'),
(680, 1, '2015-04-13 08:46:01', 'chunk_update', 'modChunk', '6'),
(681, 1, '2015-04-13 08:46:26', 'chunk_update', 'modChunk', '6'),
(682, 1, '2015-04-13 08:48:58', 'template_duplicate', 'modTemplate', '11'),
(683, 1, '2015-04-13 08:49:01', 'template_update', 'modTemplate', '11'),
(684, 1, '2015-04-13 08:50:18', 'resource_update', 'modResource', '9'),
(685, 1, '2015-04-13 08:50:48', 'category_create', 'modCategory', '16'),
(686, 1, '2015-04-13 08:52:04', 'tv_create', 'modTemplateVar', '2'),
(687, 1, '2015-04-13 08:52:33', 'tv_duplicate', 'modTemplateVar', '3'),
(688, 1, '2015-04-13 08:52:53', 'tv_update', 'modTemplateVar', '3'),
(689, 1, '2015-04-13 08:53:13', 'tv_duplicate', 'modTemplateVar', '4'),
(690, 1, '2015-04-13 08:53:24', 'tv_update', 'modTemplateVar', '4'),
(691, 1, '2015-04-13 08:56:28', 'template_update', 'modTemplate', '1'),
(692, 1, '2015-04-13 08:56:31', 'resource_update', 'modResource', '1');
INSERT INTO `modx_manager_log` (`id`, `user`, `occurred`, `action`, `classKey`, `item`) VALUES
(693, 1, '2015-04-13 09:01:39', 'object_create', 'cgGroup', '3'),
(694, 1, '2015-04-13 09:02:03', 'clientconfig.clientconfigmenu_update', 'cgGroup', '3'),
(695, 1, '2015-04-13 09:02:35', 'object_create', 'cgSetting', '8'),
(696, 1, '2015-04-13 09:03:15', 'object_create', 'cgSetting', '9'),
(697, 1, '2015-04-13 09:06:09', 'template_update', 'modTemplate', '1'),
(698, 1, '2015-04-13 09:09:37', 'template_update', 'modTemplate', '1'),
(699, 1, '2015-04-13 09:10:56', 'tv_update', 'modTemplateVar', '4'),
(700, 1, '2015-04-13 09:12:03', 'tv_update', 'modTemplateVar', '4'),
(701, 1, '2015-04-13 09:13:45', 'template_update', 'modTemplate', '11'),
(702, 1, '2015-04-13 09:14:01', 'resource_update', 'modResource', '9'),
(703, 1, '2015-04-13 09:14:05', 'resource_update', 'modResource', '9'),
(704, 1, '2015-04-13 09:15:26', 'resource_update', 'modResource', '9'),
(705, 1, '2015-04-13 09:15:35', 'template_update', 'modTemplate', '11'),
(706, 1, '2015-04-13 09:15:56', 'template_update', 'modTemplate', '11'),
(707, 1, '2015-04-13 09:17:56', 'object_create', 'cgSetting', '10'),
(708, 1, '2015-04-13 09:18:46', 'object_create', 'cgSetting', '11'),
(709, 1, '2015-04-13 09:20:01', 'object_create', 'cgSetting', '12'),
(710, 1, '2015-04-13 09:20:48', 'object_create', 'cgSetting', '13'),
(711, 1, '2015-04-13 09:21:22', 'object_create', 'cgSetting', '14'),
(712, 1, '2015-04-13 09:22:01', 'object_create', 'cgSetting', '15'),
(713, 1, '2015-04-13 09:22:56', 'object_create', 'cgSetting', '16'),
(714, 1, '2015-04-13 09:23:33', 'object_create', 'cgSetting', '17'),
(715, 1, '2015-04-13 09:24:10', 'object_create', 'cgSetting', '18'),
(716, 1, '2015-04-13 09:24:40', 'object_create', 'cgSetting', '19'),
(717, 1, '2015-04-13 09:28:48', 'object_create', 'cgSetting', '20'),
(718, 1, '2015-04-13 09:28:54', 'template_update', 'modTemplate', '6'),
(719, 1, '2015-04-13 09:34:17', 'category_create', 'modCategory', '17'),
(720, 1, '2015-04-13 09:35:22', 'tv_create', 'modTemplateVar', '5'),
(721, 1, '2015-04-13 09:35:44', 'tv_duplicate', 'modTemplateVar', '6'),
(722, 1, '2015-04-13 09:36:11', 'tv_update', 'modTemplateVar', '6'),
(723, 1, '2015-04-13 09:41:48', 'tv_create', 'modTemplateVar', '7'),
(724, 1, '2015-04-13 09:43:26', 'tv_update', 'modTemplateVar', '7'),
(725, 1, '2015-04-13 09:44:57', 'resource_update', 'modResource', '1'),
(726, 1, '2015-04-13 09:46:19', 'chunk_create', 'modChunk', '14'),
(727, 1, '2015-04-13 09:46:34', 'template_update', 'modTemplate', '1'),
(728, 1, '2015-04-13 09:47:12', 'chunk_update', 'modChunk', '14'),
(729, 1, '2015-04-13 09:47:21', 'chunk_update', 'modChunk', '14'),
(730, 1, '2015-04-13 09:47:51', 'chunk_update', 'modChunk', '14'),
(731, 1, '2015-04-13 09:48:02', 'chunk_update', 'modChunk', '14'),
(732, 1, '2015-04-13 11:07:59', 'template_update', 'modTemplate', '1'),
(733, 1, '2015-05-29 14:25:12', 'file_rename', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/_doc-example.pdf'),
(734, 1, '2015-05-29 14:25:15', 'file_rename', '', '/var/www/www/project-template.wi6.ru/assets/reportfiles/21/ol4e41vpP3QBjnhEf0BOtdjY90N5V9Cj.txt'),
(735, 1, '2015-06-01 08:50:36', 'template_update', 'modTemplate', '1'),
(736, 1, '2015-06-01 08:50:57', 'template_update', 'modTemplate', '1'),
(737, 1, '2015-06-01 08:54:15', 'tv_create', 'modTemplateVar', '8'),
(738, 1, '2015-06-01 08:56:27', 'resource_update', 'modResource', '1'),
(739, 1, '2015-06-01 08:57:10', 'tv_update', 'modTemplateVar', '8'),
(740, 1, '2015-06-01 08:59:13', 'tv_create', 'modTemplateVar', '9'),
(741, 1, '2015-06-01 08:59:38', 'template_update', 'modTemplate', '1'),
(742, 1, '2015-06-01 08:59:54', 'resource_update', 'modResource', '1'),
(743, 1, '2015-06-01 09:00:14', 'tv_update', 'modTemplateVar', '9'),
(744, 1, '2015-06-01 09:00:22', 'tv_update', 'modTemplateVar', '1'),
(745, 1, '2015-06-01 09:04:13', 'template_update', 'modTemplate', '11');

-- --------------------------------------------------------

--
-- Table structure for table `modx_media_sources`
--

CREATE TABLE IF NOT EXISTS `modx_media_sources` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `description` text,
  `class_key` varchar(100) NOT NULL DEFAULT 'sources.modFileMediaSource',
  `properties` mediumtext,
  `is_stream` tinyint(1) unsigned NOT NULL DEFAULT '1'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

--
-- Dumping data for table `modx_media_sources`
--

INSERT INTO `modx_media_sources` (`id`, `name`, `description`, `class_key`, `properties`, `is_stream`) VALUES
(1, 'Filesystem', '', 'sources.modFileMediaSource', 'a:0:{}', 1);

-- --------------------------------------------------------

--
-- Table structure for table `modx_media_sources_contexts`
--

CREATE TABLE IF NOT EXISTS `modx_media_sources_contexts` (
  `source` int(11) NOT NULL DEFAULT '0',
  `context_key` varchar(100) NOT NULL DEFAULT 'web'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Table structure for table `modx_media_sources_elements`
--

CREATE TABLE IF NOT EXISTS `modx_media_sources_elements` (
  `source` int(11) unsigned NOT NULL DEFAULT '0',
  `object_class` varchar(100) NOT NULL DEFAULT 'modTemplateVar',
  `object` int(11) unsigned NOT NULL DEFAULT '0',
  `context_key` varchar(100) NOT NULL DEFAULT 'web'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_media_sources_elements`
--

INSERT INTO `modx_media_sources_elements` (`source`, `object_class`, `object`, `context_key`) VALUES
(1, 'modTemplateVar', 1, 'web'),
(1, 'modTemplateVar', 2, 'web'),
(1, 'modTemplateVar', 3, 'web'),
(1, 'modTemplateVar', 4, 'web'),
(1, 'modTemplateVar', 5, 'web'),
(1, 'modTemplateVar', 6, 'web'),
(1, 'modTemplateVar', 7, 'web'),
(1, 'modTemplateVar', 8, 'web'),
(1, 'modTemplateVar', 9, 'web');

-- --------------------------------------------------------

--
-- Table structure for table `modx_membergroup_names`
--

CREATE TABLE IF NOT EXISTS `modx_membergroup_names` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `description` text,
  `parent` int(10) unsigned NOT NULL DEFAULT '0',
  `rank` int(10) unsigned NOT NULL DEFAULT '0',
  `dashboard` int(10) unsigned NOT NULL DEFAULT '1'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

--
-- Dumping data for table `modx_membergroup_names`
--

INSERT INTO `modx_membergroup_names` (`id`, `name`, `description`, `parent`, `rank`, `dashboard`) VALUES
(1, 'Administrator', NULL, 0, 0, 1);

-- --------------------------------------------------------

--
-- Table structure for table `modx_member_groups`
--

CREATE TABLE IF NOT EXISTS `modx_member_groups` (
`id` int(10) unsigned NOT NULL,
  `user_group` int(10) unsigned NOT NULL DEFAULT '0',
  `member` int(10) unsigned NOT NULL DEFAULT '0',
  `role` int(10) unsigned NOT NULL DEFAULT '1',
  `rank` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

--
-- Dumping data for table `modx_member_groups`
--

INSERT INTO `modx_member_groups` (`id`, `user_group`, `member`, `role`, `rank`) VALUES
(1, 1, 1, 2, 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_menus`
--

CREATE TABLE IF NOT EXISTS `modx_menus` (
  `text` varchar(255) NOT NULL DEFAULT '',
  `parent` varchar(255) NOT NULL DEFAULT '',
  `action` varchar(255) NOT NULL DEFAULT '',
  `description` varchar(255) NOT NULL DEFAULT '',
  `icon` varchar(255) NOT NULL DEFAULT '',
  `menuindex` int(11) unsigned NOT NULL DEFAULT '0',
  `params` text NOT NULL,
  `handler` text NOT NULL,
  `permissions` text NOT NULL,
  `namespace` varchar(100) NOT NULL DEFAULT 'core'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_menus`
--

INSERT INTO `modx_menus` (`text`, `parent`, `action`, `description`, `icon`, `menuindex`, `params`, `handler`, `permissions`, `namespace`) VALUES
('topnav', '', '', 'topnav_desc', '', 0, '', '', '', 'core'),
('site', 'topnav', '', '', '', 0, '', '', 'menu_site', 'core'),
('new_resource', 'site', 'resource/create', 'new_resource_desc', '', 0, '', '', 'new_document', 'core'),
('preview', 'site', '', 'preview_desc', '', 4, '', 'MODx.preview(); return false;', '', 'core'),
('import_site', 'site', 'system/import/html', 'import_site_desc', '', 5, '', '', 'import_static', 'core'),
('import_resources', 'site', 'system/import', 'import_resources_desc', '', 6, '', '', 'import_static', 'core'),
('resource_groups', 'site', 'security/resourcegroup', 'resource_groups_desc', '', 7, '', '', 'access_permissions', 'core'),
('content_types', 'site', 'system/contenttype', 'content_types_desc', '', 8, '', '', 'content_types', 'core'),
('media', 'topnav', '', 'media_desc', '', 1, '', '', 'file_manager', 'core'),
('file_browser', 'media', 'media/browser', 'file_browser_desc', '', 0, '', '', 'file_manager', 'core'),
('sources', 'media', 'source', 'sources_desc', '', 1, '', '', 'sources', 'core'),
('components', 'topnav', '', '', '', 2, '', '', 'components', 'core'),
('installer', 'components', 'workspaces', 'installer_desc', '', 0, '', '', 'packages', 'core'),
('manage', 'topnav', '', '', '', 3, '', '', 'menu_tools', 'core'),
('users', 'manage', 'security/user', 'user_management_desc', '', 0, '', '', 'view_user', 'core'),
('refresh_site', 'manage', '', 'refresh_site_desc', '', 1, '', 'MODx.clearCache(); return false;', 'empty_cache', 'core'),
('refreshuris', 'refresh_site', '', 'refreshuris_desc', '', 0, '', 'MODx.refreshURIs(); return false;', 'empty_cache', 'core'),
('remove_locks', 'manage', '', 'remove_locks_desc', '', 2, '', '\nMODx.msg.confirm({\n    title: _(''remove_locks'')\n    ,text: _(''confirm_remove_locks'')\n    ,url: MODx.config.connectors_url\n    ,params: {\n        action: ''system/remove_locks''\n    }\n    ,listeners: {\n        ''success'': {fn:function() {\n            var tree = Ext.getCmp("modx-resource-tree");\n            if (tree && tree.rendered) {\n                tree.refresh();\n            }\n         },scope:this}\n    }\n});', 'remove_locks', 'core'),
('flush_access', 'manage', '', 'flush_access_desc', '', 3, '', 'MODx.msg.confirm({\n    title: _(''flush_access'')\n    ,text: _(''flush_access_confirm'')\n    ,url: MODx.config.connector_url\n    ,params: {\n        action: ''security/access/flush''\n    }\n    ,listeners: {\n        ''success'': {fn:function() { location.href = ''./''; },scope:this}\n    }\n});', 'access_permissions', 'core'),
('flush_sessions', 'manage', '', 'flush_sessions_desc', '', 4, '', 'MODx.msg.confirm({\n    title: _(''flush_sessions'')\n    ,text: _(''flush_sessions_confirm'')\n    ,url: MODx.config.connector_url\n    ,params: {\n        action: ''security/flush''\n    }\n    ,listeners: {\n        ''success'': {fn:function() { location.href = ''./''; },scope:this}\n    }\n});', 'flush_sessions', 'core'),
('reports', 'manage', '', 'reports_desc', '', 5, '', '', 'menu_reports', 'core'),
('site_schedule', 'reports', 'resource/site_schedule', 'site_schedule_desc', '', 0, '', '', 'view_document', 'core'),
('view_logging', 'reports', 'system/logs', 'view_logging_desc', '', 1, '', '', 'logs', 'core'),
('eventlog_viewer', 'reports', 'system/event', 'eventlog_viewer_desc', '', 2, '', '', 'view_eventlog', 'core'),
('view_sysinfo', 'reports', 'system/info', 'view_sysinfo_desc', '', 3, '', '', 'view_sysinfo', 'core'),
('usernav', '', '', 'usernav_desc', '', 0, '', '', '', 'core'),
('user', 'usernav', '', '', '<span id="user-avatar">{$userImage}</span> <span id="user-username">{$username}</span>', 5, '', '', 'menu_user', 'core'),
('profile', 'user', 'security/profile', 'profile_desc', '', 0, '', '', 'change_profile', 'core'),
('messages', 'user', 'security/message', 'messages_desc', '', 1, '', '', 'messages', 'core'),
('logout', 'user', '', 'logout_desc', '', 2, '', 'MODx.logout(); return false;', 'logout', 'core'),
('admin', 'usernav', '', '', '<i class="icon-gear icon icon-large"></i>', 6, '', '', 'settings', 'core'),
('system_settings', 'admin', 'system/settings', 'system_settings_desc', '', 0, '', '', 'settings', 'core'),
('bespoke_manager', 'admin', 'security/forms', 'bespoke_manager_desc', '', 1, '', '', 'customize_forms', 'core'),
('dashboards', 'admin', 'system/dashboards', 'dashboards_desc', '', 2, '', '', 'dashboards', 'core'),
('contexts', 'admin', 'context', 'contexts_desc', '', 3, '', '', 'view_contexts', 'core'),
('edit_menu', 'admin', 'system/action', 'edit_menu_desc', '', 4, '', '', 'actions', 'core'),
('acls', 'admin', 'security/permission', 'acls_desc', '', 5, '', '', 'access_permissions', 'core'),
('propertysets', 'admin', 'element/propertyset', 'propertysets_desc', '', 6, '', '', 'property_sets', 'core'),
('lexicon_management', 'admin', 'workspaces/lexicon', 'lexicon_management_desc', '', 7, '', '', 'lexicons', 'core'),
('namespaces', 'admin', 'workspaces/namespace', 'namespaces_desc', '', 8, '', '', 'namespaces', 'core'),
('about', 'usernav', 'help', '', '<i class="icon-question-circle icon icon-large"></i>', 7, '', '', 'help', 'core'),
('formit', 'components', '1', 'formit.menu_desc', 'images/icons/plugin.gif', 0, '', '', '', 'core'),
('collections.menu.collection_templates', 'components', '2', 'collections.menu.collection_templates_desc', '', 0, '', '', '', 'core'),
('fileattach', 'components', '3', 'fileattach.menu_desc', '', 0, '', '', 'fileattach.totallist', 'core'),
('clientconfig', 'components', '4', 'clientconfig.desc', 'images/icons/plugin.gif', 0, '', '', '', 'core'),
('migx', 'topnav', 'index', '', '', 0, '&configs=packagemanager||migxconfigs||setup', '', '', 'migx');

-- --------------------------------------------------------

--
-- Table structure for table `modx_migx_configs`
--

CREATE TABLE IF NOT EXISTS `modx_migx_configs` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(100) NOT NULL DEFAULT '',
  `formtabs` text NOT NULL,
  `contextmenus` text NOT NULL,
  `actionbuttons` text NOT NULL,
  `columnbuttons` text NOT NULL,
  `filters` text NOT NULL,
  `extended` text NOT NULL,
  `columns` text NOT NULL,
  `createdby` int(10) NOT NULL DEFAULT '0',
  `createdon` datetime NOT NULL,
  `editedby` int(10) NOT NULL DEFAULT '0',
  `editedon` datetime NOT NULL,
  `deleted` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `deletedon` datetime NOT NULL,
  `deletedby` int(10) NOT NULL DEFAULT '0',
  `published` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `publishedon` datetime NOT NULL,
  `publishedby` int(10) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_migx_config_elements`
--

CREATE TABLE IF NOT EXISTS `modx_migx_config_elements` (
`id` int(10) unsigned NOT NULL,
  `config_id` int(10) NOT NULL DEFAULT '0',
  `element_id` int(10) NOT NULL DEFAULT '0',
  `rank` int(10) NOT NULL DEFAULT '0',
  `createdby` int(10) NOT NULL DEFAULT '0',
  `createdon` datetime NOT NULL,
  `editedby` int(10) NOT NULL DEFAULT '0',
  `editedon` datetime NOT NULL,
  `deleted` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `deletedon` datetime NOT NULL,
  `deletedby` int(10) NOT NULL DEFAULT '0',
  `published` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `publishedon` datetime NOT NULL,
  `publishedby` int(10) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_migx_elements`
--

CREATE TABLE IF NOT EXISTS `modx_migx_elements` (
`id` int(10) unsigned NOT NULL,
  `type` varchar(100) NOT NULL DEFAULT '',
  `content` text NOT NULL,
  `createdby` int(10) NOT NULL DEFAULT '0',
  `createdon` datetime NOT NULL,
  `editedby` int(10) NOT NULL DEFAULT '0',
  `editedon` datetime NOT NULL,
  `deleted` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `deletedon` datetime NOT NULL,
  `deletedby` int(10) NOT NULL DEFAULT '0',
  `published` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `publishedon` datetime NOT NULL,
  `publishedby` int(10) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_migx_formtabs`
--

CREATE TABLE IF NOT EXISTS `modx_migx_formtabs` (
`id` int(10) unsigned NOT NULL,
  `config_id` int(10) NOT NULL DEFAULT '0',
  `caption` varchar(255) NOT NULL DEFAULT '',
  `pos` int(10) NOT NULL DEFAULT '0',
  `print_before_tabs` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `extended` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_migx_formtab_fields`
--

CREATE TABLE IF NOT EXISTS `modx_migx_formtab_fields` (
`id` int(10) unsigned NOT NULL,
  `config_id` int(10) NOT NULL DEFAULT '0',
  `formtab_id` int(10) NOT NULL DEFAULT '0',
  `field` varchar(255) NOT NULL DEFAULT '',
  `caption` varchar(255) NOT NULL DEFAULT '',
  `description` text NOT NULL,
  `pos` int(10) NOT NULL DEFAULT '0',
  `description_is_code` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `inputTV` varchar(255) NOT NULL DEFAULT '',
  `inputTVtype` varchar(255) NOT NULL DEFAULT '',
  `validation` text NOT NULL,
  `configs` varchar(255) NOT NULL DEFAULT '',
  `restrictive_condition` text NOT NULL,
  `display` varchar(255) NOT NULL DEFAULT '',
  `sourceFrom` varchar(255) NOT NULL DEFAULT '',
  `sources` varchar(255) NOT NULL DEFAULT '',
  `inputOptionValues` text NOT NULL,
  `default` text NOT NULL,
  `extended` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_namespaces`
--

CREATE TABLE IF NOT EXISTS `modx_namespaces` (
  `name` varchar(40) NOT NULL DEFAULT '',
  `path` text,
  `assets_path` text
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_namespaces`
--

INSERT INTO `modx_namespaces` (`name`, `path`, `assets_path`) VALUES
('core', '{core_path}', '{assets_path}'),
('formit', '{core_path}components/formit/', ''),
('pdotools', '{core_path}components/pdotools/', ''),
('ajaxform', '{core_path}components/ajaxform/', ''),
('ace', '{core_path}components/ace/', ''),
('dateago', '{core_path}components/dateago/', ''),
('collections', '{core_path}components/collections/', '{assets_path}components/collections/'),
('fileattach', '{core_path}components/fileattach/', ''),
('minifyx', '{core_path}components/minifyx/', ''),
('tinymcerte', '{core_path}components/tinymcerte/', '{assets_path}components/tinymcerte/'),
('clientconfig', '{core_path}components/clientconfig/', ''),
('migx', '{core_path}components/migx/', '{assets_path}components/migx/');

-- --------------------------------------------------------

--
-- Table structure for table `modx_property_set`
--

CREATE TABLE IF NOT EXISTS `modx_property_set` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(50) NOT NULL DEFAULT '',
  `category` int(10) NOT NULL DEFAULT '0',
  `description` varchar(255) NOT NULL DEFAULT '',
  `properties` text
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_register_messages`
--

CREATE TABLE IF NOT EXISTS `modx_register_messages` (
  `topic` int(10) unsigned NOT NULL,
  `id` varchar(255) NOT NULL,
  `created` datetime NOT NULL,
  `valid` datetime NOT NULL,
  `accessed` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `accesses` int(10) unsigned NOT NULL DEFAULT '0',
  `expires` int(20) NOT NULL DEFAULT '0',
  `payload` mediumtext NOT NULL,
  `kill` tinyint(1) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_register_messages`
--

INSERT INTO `modx_register_messages` (`topic`, `id`, `created`, `valid`, `accessed`, `accesses`, `expires`, `payload`, `kill`) VALUES
(3, '21232f297a57a5a743894a0e4a801fc3', '2015-04-08 16:32:52', '2015-04-08 16:32:52', NULL, 0, 1428586372, 'if (time() > 1428586372) return null;\nreturn ''16eb3f760b08224eb85201a98258fa4d'';\n', 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_register_queues`
--

CREATE TABLE IF NOT EXISTS `modx_register_queues` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL,
  `options` mediumtext
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;

--
-- Dumping data for table `modx_register_queues`
--

INSERT INTO `modx_register_queues` (`id`, `name`, `options`) VALUES
(1, 'locks', 'a:1:{s:9:"directory";s:5:"locks";}'),
(2, 'resource_reload', 'a:1:{s:9:"directory";s:15:"resource_reload";}'),
(3, 'user', 'a:0:{}');

-- --------------------------------------------------------

--
-- Table structure for table `modx_register_topics`
--

CREATE TABLE IF NOT EXISTS `modx_register_topics` (
`id` int(10) unsigned NOT NULL,
  `queue` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL,
  `created` datetime NOT NULL,
  `updated` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `options` mediumtext
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;

--
-- Dumping data for table `modx_register_topics`
--

INSERT INTO `modx_register_topics` (`id`, `queue`, `name`, `created`, `updated`, `options`) VALUES
(1, 1, '/resource/', '2015-03-24 15:49:51', NULL, NULL),
(2, 2, '/resourcereload/', '2015-03-24 16:11:43', NULL, NULL),
(3, 3, '/pwd/reset/', '2015-04-08 16:32:52', NULL, NULL);

-- --------------------------------------------------------

--
-- Table structure for table `modx_session`
--

CREATE TABLE IF NOT EXISTS `modx_session` (
  `id` varchar(255) NOT NULL DEFAULT '',
  `access` int(20) unsigned NOT NULL,
  `data` mediumtext
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_session`
--

INSERT INTO `modx_session` (`id`, `access`, `data`) VALUES
('b5a5tlgnt80fd35eo0slgip714', 1433140014, 'modx.user.contextTokens|a:0:{}');

-- --------------------------------------------------------

--
-- Table structure for table `modx_site_content`
--

CREATE TABLE IF NOT EXISTS `modx_site_content` (
`id` int(10) unsigned NOT NULL,
  `type` varchar(20) NOT NULL DEFAULT 'document',
  `contentType` varchar(50) NOT NULL DEFAULT 'text/html',
  `pagetitle` varchar(255) NOT NULL DEFAULT '',
  `longtitle` varchar(255) NOT NULL DEFAULT '',
  `description` varchar(255) NOT NULL DEFAULT '',
  `alias` varchar(255) DEFAULT '',
  `link_attributes` varchar(255) NOT NULL DEFAULT '',
  `published` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `pub_date` int(20) NOT NULL DEFAULT '0',
  `unpub_date` int(20) NOT NULL DEFAULT '0',
  `parent` int(10) NOT NULL DEFAULT '0',
  `isfolder` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `introtext` text,
  `content` mediumtext,
  `richtext` tinyint(1) unsigned NOT NULL DEFAULT '1',
  `template` int(10) NOT NULL DEFAULT '0',
  `menuindex` int(10) NOT NULL DEFAULT '0',
  `searchable` tinyint(1) unsigned NOT NULL DEFAULT '1',
  `cacheable` tinyint(1) unsigned NOT NULL DEFAULT '1',
  `createdby` int(10) NOT NULL DEFAULT '0',
  `createdon` int(20) NOT NULL DEFAULT '0',
  `editedby` int(10) NOT NULL DEFAULT '0',
  `editedon` int(20) NOT NULL DEFAULT '0',
  `deleted` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `deletedon` int(20) NOT NULL DEFAULT '0',
  `deletedby` int(10) NOT NULL DEFAULT '0',
  `publishedon` int(20) NOT NULL DEFAULT '0',
  `publishedby` int(10) NOT NULL DEFAULT '0',
  `menutitle` varchar(255) NOT NULL DEFAULT '',
  `donthit` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `privateweb` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `privatemgr` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `content_dispo` tinyint(1) NOT NULL DEFAULT '0',
  `hidemenu` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `class_key` varchar(100) NOT NULL DEFAULT 'modDocument',
  `context_key` varchar(100) NOT NULL DEFAULT 'web',
  `content_type` int(11) unsigned NOT NULL DEFAULT '1',
  `uri` text,
  `uri_override` tinyint(1) NOT NULL DEFAULT '0',
  `hide_children_in_tree` tinyint(1) NOT NULL DEFAULT '0',
  `show_in_tree` tinyint(1) NOT NULL DEFAULT '1',
  `properties` mediumtext
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=25 ;

--
-- Dumping data for table `modx_site_content`
--

INSERT INTO `modx_site_content` (`id`, `type`, `contentType`, `pagetitle`, `longtitle`, `description`, `alias`, `link_attributes`, `published`, `pub_date`, `unpub_date`, `parent`, `isfolder`, `introtext`, `content`, `richtext`, `template`, `menuindex`, `searchable`, `cacheable`, `createdby`, `createdon`, `editedby`, `editedon`, `deleted`, `deletedon`, `deletedby`, `publishedon`, `publishedby`, `menutitle`, `donthit`, `privateweb`, `privatemgr`, `content_dispo`, `hidemenu`, `class_key`, `context_key`, `content_type`, `uri`, `uri_override`, `hide_children_in_tree`, `show_in_tree`, `properties`) VALUES
(1, 'document', 'text/html', 'Главная', '', '', 'index', '', 1, 0, 0, 0, 0, '', '', 1, 1, 0, 1, 1, 1, 1427201187, 1, 1433138394, 0, 0, 0, 0, 0, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'index/', 0, 0, 1, NULL),
(2, 'document', 'text/html', 'Проект', '', '', 'proekt', '', 1, 0, 0, 0, 1, '', '7', 1, 2, 1, 1, 1, 1, 1427202692, 1, 1427285491, 0, 0, 0, 1427202660, 1, '', 0, 0, 0, 0, 0, 'modWebLink', 'web', 1, 'proekt/', 0, 0, 1, '{"core":{"responseCode":"HTTP\\/1.1 301 Moved Permanently"}}'),
(3, 'document', 'text/html', 'Отчетность', '', '', 'otchetnost', '', 1, 0, 0, 0, 1, '', '', 1, 7, 2, 1, 1, 1, 1427202731, 1, 1427265866, 0, 0, 0, 1427202660, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'otchetnost/', 0, 0, 1, NULL),
(4, 'document', 'text/html', 'Развитие', '', '', 'razvitie', '', 1, 0, 0, 0, 0, '', '<h2>Перспективы коммерциализации результатов</h2>\r\n<ul>\r\n<li>Текст.</li>\r\n<li>Текст.</li>\r\n<li>Текст.</li>\r\n</ul>\r\n<h2>Популяризация проекта</h2>\r\n<p>Текст.</p>\r\n<h2>Публикации</h2>\r\n<p>Текст.</p>', 1, 2, 3, 1, 1, 1, 1427202754, 1, 1427785336, 0, 0, 0, 1427202660, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'razvitie/', 0, 0, 1, NULL),
(5, 'document', 'text/html', 'Новости', '', '', 'novosti', '', 1, 0, 0, 0, 1, '', '', 1, 4, 4, 1, 1, 1, 1427202776, 1, 1427206354, 0, 0, 0, 1427202660, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'novosti/', 0, 0, 1, NULL),
(6, 'document', 'text/html', 'Контакты', 'Контактная информация', '', 'kontakti', '', 1, 0, 0, 0, 0, '', '', 1, 6, 5, 1, 1, 1, 1427202800, 1, 1427231195, 0, 0, 0, 1427202660, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'kontakti/', 0, 0, 1, NULL),
(7, 'document', 'text/html', 'Цели и задачи', '', '', 'celi-i-zadachi', '', 1, 0, 0, 2, 0, '', '<h2>Цели выполнения проекта</h2>\r\n<p>Текст.</p>\r\n<h2>Задачи проекта</h2>\r\n<ul>\r\n<li>текст;</li>\r\n<li>текст;</li>\r\n<li>текст.</li>\r\n</ul>\r\n<h2>Актуальность</h2>\r\n<p>Текст.</p>\r\n<h2>Новизна</h2>\r\n<p>Текст.</p>', 1, 3, 0, 1, 1, 1, 1427203337, 1, 1427784490, 0, 0, 0, 1427203320, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'proekt/celi-i-zadachi/', 0, 0, 1, NULL),
(8, 'document', 'text/html', 'Структура', '', '', 'struktura', '', 1, 0, 0, 2, 1, '', '<table class="indicators-table">\r\n<thead>\r\n<tr><th style="width: 7%;"><span style="font-weight: normal;">№<br />п/п</span></th><th style="width: 23%;"><span style="font-weight: normal;">Наименование<br /> этапов</span></th><th style="width: 70%;"><span style="font-weight: normal;">Содержание выполняемых работ и мероприятий</span></th></tr>\r\n</thead>\r\n<tbody>\r\n<tr>\r\n<td style="text-align: center;">1</td>\r\n<td style="text-align: center;"><a href="proekt/struktura/1-step/">Название первого этапа</a></td>\r\n<td style="text-align: left;">\r\n<p>Текст.</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td style="text-align: center;">2</td>\r\n<td style="text-align: center;">Название второго этапа</td>\r\n<td style="text-align: left;">\r\n<p>Текст.</p>\r\n</td>\r\n</tr>\r\n</tbody>\r\n</table>', 1, 9, 1, 1, 1, 1, 1427203344, 1, 1427784566, 0, 0, 0, 1427203320, 1, '', 0, 0, 0, 0, 0, 'CollectionContainer', 'web', 1, 'proekt/struktura/', 0, 0, 1, NULL),
(9, 'document', 'text/html', 'Участники', '', '', 'uchastniki', '', 1, 0, 0, 2, 0, '', '', 1, 11, 2, 1, 1, 1, 1427203368, 1, 1428905726, 0, 0, 0, 1427203320, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'proekt/uchastniki/', 0, 0, 1, NULL),
(10, 'document', 'text/html', 'Индикаторы', '', '', 'indikatori', '', 1, 0, 0, 2, 0, '', '<h2>Отчетный период &mdash; ___&nbsp;ЭТАП</h2>\r\n<table class="indicators-table">\r\n<thead>\r\n<tr><th rowspan="2">№</th><th rowspan="2">Наименование</th><th rowspan="2">Ед. изм.</th><th colspan="2">Значения по проекту ВСЕГО</th><th colspan="3">Значения на текущий год</th></tr>\r\n<tr><th>Заплани- ровано</th><th>Факти- чески</th><th>Заплани- ровано</th><th>Выпол- нено</th><th>Итого</th></tr>\r\n</thead>\r\n<tbody>\r\n<tr>\r\n<td style="text-align: left;" colspan="8"><strong>Индикаторы</strong></td>\r\n</tr>\r\n<tr>\r\n<td>1</td>\r\n<td>Текст.</td>\r\n<td>---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n</tr>\r\n<tr>\r\n<td>2</td>\r\n<td>Текст.</td>\r\n<td>---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n</tr>\r\n<tr>\r\n<td>3</td>\r\n<td>Текст.</td>\r\n<td>---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n</tr>\r\n<tr>\r\n<td>4</td>\r\n<td>Текст.</td>\r\n<td>---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n</tr>\r\n<tr>\r\n<td style="text-align: left;" colspan="8"><strong>Показатели</strong></td>\r\n</tr>\r\n<tr>\r\n<td>1</td>\r\n<td>Текст.</td>\r\n<td>---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n</tr>\r\n<tr>\r\n<td>2</td>\r\n<td>Текст.</td>\r\n<td>---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n</tr>\r\n<tr>\r\n<td>3</td>\r\n<td>Текст.</td>\r\n<td>---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n</tr>\r\n</tbody>\r\n</table>', 1, 3, 3, 1, 1, 1, 1427203389, 1, 1427785015, 0, 0, 0, 1427203320, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'proekt/indikatori/', 0, 0, 1, NULL),
(11, 'document', 'text/html', 'Планируемые результаты', '', '', 'planiruemie-resultati', '', 1, 0, 0, 2, 0, '', '<h2>Планируемые результаты ПНИЭР</h2>\r\n<p>Текст.</p>\r\n<h2>Планируемые результаты промышленного внедрения</h2>\r\n<p>Текст.</p>', 1, 3, 4, 1, 1, 1, 1427203409, 1, 1427785084, 0, 0, 0, 1427203320, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'proekt/planiruemie-resultati/', 0, 0, 1, NULL),
(12, 'document', 'text/html', 'Ход выполнения', '', '', 'hod-vipolnenia', '', 1, 0, 0, 5, 1, '', '', 1, 4, 0, 1, 1, 1, 1427206606, 1, 1427269860, 0, 0, 0, 1427206560, 1, '', 0, 0, 0, 0, 1, 'CollectionContainer', 'web', 1, 'novosti/hod-vipolnenia/', 0, 0, 1, NULL),
(13, 'document', 'text/html', 'События', '', '', 'sobitia', '', 1, 0, 0, 5, 1, '', '', 1, 4, 1, 1, 1, 1, 1427206614, 1, 1427269886, 0, 0, 0, 1427206560, 1, '', 0, 0, 0, 0, 1, 'CollectionContainer', 'web', 1, 'novosti/sobitia/', 0, 0, 1, NULL),
(14, 'document', 'text/html', 'Ход выполнения 1', '', '', 'hod-vip-1', '', 1, 0, 0, 12, 0, 'Краткий анонс новости о ходе выполнения 1', '<p>Полный текст новости о ходе выполнения 2.</p>', 1, 5, 0, 1, 1, 1, 1427207297, 1, 1427785509, 0, 0, 0, 1413984480, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'novosti/hod-vipolnenia/hod-vip-1/', 0, 0, 0, NULL),
(16, 'document', 'text/html', 'Новость 3', '', '', 'event-1', '', 1, 0, 0, 13, 0, 'Краткий анонс новости 3', '<p>Полный текст (подробный) новости 3.</p>', 1, 5, 0, 1, 1, 1, 1427208835, 1, 1427788660, 0, 0, 0, 1414245180, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'novosti/sobitia/event-1/', 0, 0, 0, NULL),
(17, 'document', 'text/html', 'Новость 2', '', '', 'event-2', '', 1, 0, 0, 13, 0, 'Краткий анонс новости 2', '<p>Полный текст (подробный) новости 2.</p>', 1, 5, 1, 1, 1, 1, 1427208924, 1, 1427784019, 0, 0, 0, 1413985980, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'novosti/sobitia/event-2/', 0, 0, 0, NULL),
(18, 'document', 'text/html', 'Новость 1', '', '', 'event-3', '', 1, 0, 0, 13, 0, 'Краткий анонс новости 1', '<p>Полный текст (подробный) новости 1.</p>', 1, 5, 2, 1, 1, 1, 1427208951, 1, 1427788682, 0, 0, 0, 1413294780, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'novosti/sobitia/event-3/', 0, 0, 0, NULL),
(19, 'document', 'text/html', '2014', '', '', '2014', '', 1, 0, 0, 3, 1, '', '', 1, 7, 0, 1, 1, 1, 1427265393, 1, 1427269668, 0, 0, 0, 1427265360, 1, '', 0, 0, 0, 0, 1, 'CollectionContainer', 'web', 1, 'otchetnost/2014/', 0, 0, 1, NULL),
(20, 'document', 'text/html', '2015', '', '', '2015', '', 1, 0, 0, 3, 0, '', '', 1, 7, 1, 1, 1, 1, 1427265401, 1, 1427269706, 0, 0, 0, 1427265360, 1, '', 0, 0, 0, 0, 1, 'CollectionContainer', 'web', 1, 'otchetnost/2015/', 0, 0, 1, NULL),
(21, 'document', 'text/html', 'Отчет по реализации 1 этапа «Название этапа»', '', '', 'report-1', '', 1, 0, 0, 19, 0, '', '', 1, 8, 0, 1, 1, 1, 1427265830, 1, 1427785259, 0, 0, 0, 1420008180, 1, '', 0, 0, 0, 0, 1, 'modDocument', 'web', 1, 'otchetnost/2014/report-1/', 0, 0, 0, NULL),
(23, 'document', 'text/html', '1 этап', '', '', '1-step', '', 1, 0, 0, 8, 0, '', '<h2>Содержание работ</h2>\r\n<table class="indicators-table">\r\n<thead>\r\n<tr><th style="width: 7%;">№ п/п</th><th style="width: 10%;">Пункт КП</th><th style="width: 30%;">Название работы</th><th style="width: 20%;">Исполнитель работ, роль в проекте</th><th style="width: 18%;">Средства субсидии (руб.)</th><th style="width: 15%;">Внебюджетные средства (руб.)</th></tr>\r\n</thead>\r\n<tbody>\r\n<tr>\r\n<td style="text-align: center;">1</td>\r\n<td style="text-align: center;">*</td>\r\n<td style="text-align: left;">\r\n<p>Текст</p>\r\n</td>\r\n<td style="text-align: left;">Название компании</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n</tr>\r\n<tr>\r\n<td style="text-align: center;">2</td>\r\n<td style="text-align: center;">*</td>\r\n<td style="text-align: left;">Текст.</td>\r\n<td style="text-align: left;">Название компании</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n</tr>\r\n<tr>\r\n<td style="text-align: center;">3</td>\r\n<td style="text-align: center;">*</td>\r\n<td style="text-align: left;">Текст.</td>\r\n<td style="text-align: left;">Название компании</td>\r\n<td style="text-align: center;">---</td>\r\n<td style="text-align: center;">---</td>\r\n</tr>\r\n<tr>\r\n<td style="text-align: right;" colspan="4"><strong>ИТОГО:</strong></td>\r\n<td style="text-align: center;"><strong>---</strong></td>\r\n<td style="text-align: center;"><strong>---</strong></td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<h2>Результаты</h2>\r\n<div id="accordion" class="panel-group">\r\n<div class="panel panel-default">\r\n<div id="headingOne" class="panel-heading">\r\n<div class="">&nbsp;</div>\r\n<h4 class="panel-title"><a href="#collapseOne" data-toggle="collapse" data-parent="#accordion"> Работы 1 </a></h4>\r\n</div>\r\n<div id="collapseOne" class="panel-collapse collapse">\r\n<div class="panel-body">Текст.</div>\r\n</div>\r\n</div>\r\n<div class="panel panel-default">\r\n<div id="headingTwo" class="panel-heading">\r\n<div>&nbsp;</div>\r\n<h4 class="panel-title"><a class="collapsed" href="#collapseTwo" data-toggle="collapse" data-parent="#accordion"> Работы 2 </a></h4>\r\n</div>\r\n<div id="collapseTwo" class="panel-collapse collapse">\r\n<div class="panel-body">Текст.</div>\r\n</div>\r\n</div>\r\n<div class="panel panel-default">\r\n<div id="headingThree" class="panel-heading">\r\n<div>&nbsp;</div>\r\n<h4 class="panel-title"><a class="collapsed" href="#collapseThree" data-toggle="collapse" data-parent="#accordion"> Работы 3 </a></h4>\r\n</div>\r\n<div id="collapseThree" class="panel-collapse collapse">\r\n<div class="panel-body">Текст.</div>\r\n</div>\r\n</div>\r\n</div>\r\n<h2>Оценка экспертов</h2>\r\n<p>Текст.</p>', 1, 10, 0, 1, 1, 1, 1427286135, 1, 1427785047, 0, 0, 0, 1427286120, 1, '', 0, 0, 0, 0, 1, 'modDocument', 'web', 1, 'proekt/struktura/1-step/', 0, 0, 0, NULL),
(24, 'document', 'text/html', 'Ход выполнения 2', '', '', 'ход-выполнения-1', '', 1, 0, 0, 12, 0, 'Краткий анонс новости о ходе выполнения 2', '<p>Полный текст новости о ходе выполнения 2.</p>', 1, 5, 1, 1, 1, 1, 1427785442, 1, 1427785483, 0, 0, 0, 1413984480, 1, '', 0, 0, 0, 0, 0, 'modDocument', 'web', 1, 'novosti/hod-vipolnenia/ход-выполнения-1/', 0, 0, 0, NULL);

-- --------------------------------------------------------

--
-- Table structure for table `modx_site_htmlsnippets`
--

CREATE TABLE IF NOT EXISTS `modx_site_htmlsnippets` (
`id` int(10) unsigned NOT NULL,
  `source` int(10) unsigned NOT NULL DEFAULT '0',
  `property_preprocess` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `name` varchar(50) NOT NULL DEFAULT '',
  `description` varchar(255) NOT NULL DEFAULT 'Chunk',
  `editor_type` int(11) NOT NULL DEFAULT '0',
  `category` int(11) NOT NULL DEFAULT '0',
  `cache_type` tinyint(1) NOT NULL DEFAULT '0',
  `snippet` mediumtext,
  `locked` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `properties` text,
  `static` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `static_file` varchar(255) NOT NULL DEFAULT ''
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=15 ;

--
-- Dumping data for table `modx_site_htmlsnippets`
--

INSERT INTO `modx_site_htmlsnippets` (`id`, `source`, `property_preprocess`, `name`, `description`, `editor_type`, `category`, `cache_type`, `snippet`, `locked`, `properties`, `static`, `static_file`) VALUES
(1, 1, 0, 'tpl.AjaxForm.example', '', 0, 3, 0, '<form action="" method="post" class="ajax_form af_example form-horizontal">\n\n	<div class="control-group">\n		<label class="control-label" for="af_name">[[%af_label_name]]</label>\n		<div class="controls">\n			<input type="text" id="af_name" name="name" value="[[+fi.name]]" placeholder="" class="span4" />\n			<span class="error_name">[[+fi.error.name]]</span>\n		</div>\n	</div>\n\n	<div class="control-group">\n		<label class="control-label" for="af_email">[[%af_label_email]]</label>\n		<div class="controls">\n			<input type="email" id="af_email" name="email" value="[[+fi.email]]" placeholder="" class="span4" />\n			<span class="error_email">[[+fi.error.email]]</span>\n		</div>\n	</div>\n\n	<div class="control-group">\n		<label class="control-label" for="af_message">[[%af_label_message]]</label>\n		<div class="controls">\n			<textarea id="af_message" name="message" class="span4" rows="5">[[+fi.message]]</textarea>\n			<span class="error_message">[[+fi.error.message]]</span>\n		</div>\n	</div>\n\n	<div class="control-group">\n		<div class="controls">\n			<button type="reset" class="btn">[[%af_reset]]</button>\n			<button type="submit" class="btn btn-primary">[[%af_submit]]</button>\n		</div>\n	</div>\n	\n	[[+fi.success:is=`1`:then=`\n		<div class="alert alert-success">[[+fi.successMessage]]</div>\n	`]]\n	[[+fi.validation_error:is=`1`:then=`\n		<div class="alert alert-danger">[[+fi.validation_error_message]]</div>\n	`]]\n</form>', 0, NULL, 0, 'core/components/ajaxform/elements/chunks/chunk.example.tpl'),
(2, 1, 0, 'custom_tpl.AjaxForm.example', '', 0, 3, 0, '<form id="contact-form" class="contact-form ajax_form af_example form-horizontal" method="post" action="" style="display: block;">\n	  <div class="form-group">\n			<input type="text" class="form-control" id="form-name" name="name" value="[[+fi.name]]" placeholder="Ваше имя">\n			<span class="error_name">[[+fi.error.name]]</span>\n	  </div>\n	  <div class="form-group">\n			<input type="email" class="form-control" id="form-email" name="email" value="[[+fi.email]]" placeholder="Адрес эл. почты">\n				<span class="error_email">[[+fi.error.email]]</span>\n	  </div>\n	  	  <div class="control-group">\n			<textarea id="af_message" name="message" class="form-control" placeholder="Сообщение" style="height: 72px;">[[+fi.message]]</textarea>\n			<span class="error_message">[[+fi.error.message]]</span>\n	</div>\n	  <button type="submit" class="btn btn-primary">Отправить</button>\n	  <span class="message-span-form"></span>\n	  <div class="row">\n		<div class="col-md-12">\n			<div class="form-process-contact"></div>\n		</div>\n	</div>\n		[[+fi.success:is=`1`:then=`\n<div class="alert alert-success">[[+fi.successMessage]]</div>\n`]]\n[[+fi.validation_error:is=`1`:then=`\n<div class="alert alert-danger">[[+fi.validation_error_message]]</div>\n`]]\n</form>', 0, 'a:0:{}', 0, 'core/components/ajaxform/elements/chunks/chunk.example.tpl'),
(3, 0, 0, 'emailTmpl', '', 0, 3, 0, '<div>\r\n    <p>Здравствуйте!</p>\r\n    <p>На вашем сайте <a href="http://visualisation.wi6.ru/">visualisation.wi6.ru</a> была отправлена форма со страницы "Контакты".</p>\r\n    <p>Отправитель указал следующие данные.</p>\r\n    <p>Имя: <b>[[+name:default=`не указано`]]</b></p>\r\n    <p>Электронная почта: <b><a href="mailto:[[+email:default=`не указано`]]">[[+email:default=`не указано`]]</a></b></p>\r\n    <p>Сообщение отправителя:</p>\r\n    <p><strong>[[+message]]</strong></p>\r\n</div>', 0, 'a:0:{}', 0, ''),
(4, 0, 0, 'nav', '', 0, 4, 0, '<div class="header-top">\n	<div class="container">\n		<nav class="navbar navbar-default">\n		  <div class="container-fluid">\n			<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">\n			  [[pdoMenu? \n					&parents=`0` \n					&level=`2`\n					&tplOuter=`@INLINE  <ul class="nav navbar-nav [[+classnames]]">[[+wrapper]]</ul>` \n					&tpl=`@INLINE  <li[[+classes]]><a href="[[+link]]" [[+attributes]]>[[+menutitle]]</a></li>` \n					&tplParentRow=`@INLINE  <li class="dropdown [[+classnames]]"><a href="[[+link]]" class="dropdown-toggle disabled" data-toggle="dropdown" role="button" aria-expanded="false">[[+menutitle]]</a>[[+wrapper]]</li>` \n					&tplInner=`@INLINE  <ul class="dropdown-menu [[+classnames]]" role="menu">[[+wrapper]]</ul>` \n					&tplInnerRow=`@INLINE  <li[[+classes]]><a href="[[+link]]" [[+attributes]]>[[+menutitle]]</a></li>`\n				]]\n			</div>\n		  </div>\n		</nav>\n	</div> \n</div>', 0, 'a:0:{}', 0, ''),
(5, 0, 0, 'breadcrumbs', '', 0, 4, 0, '<div class="breadcrumbs-line">\n	<div class="container">\n		<div class="breadcrubs-l">\n		    [[pdoCrumbs? \n		    &outputSeparator=`<li><img src="/assets/img/breadcrumbs-sep.png" /></li>` \n		    &tpl=`@INLINE  <li><a href="[[+link]]">[[+menutitle]]</a></li>` \n		    &tplCurrent=`@INLINE  <li class="active">[[+menutitle]]</li>` \n		    &tplWrapper=`@INLINE  <ol class="breadcrumb">[[+output]]</ol>` \n		    &showHome=`1` \n		    &showAtHome=`0`\n		    ]]\n		</div>\n		<h1>[[*longtitle:isequalto=``:then=`[[*pagetitle]]`:else=`[[*longtitle]]`]]</h1>\n	</div>\n</div>', 0, 'a:0:{}', 0, ''),
(6, 0, 0, 'footer', '', 0, 4, 0, '<div class="footer-block" id="footer">\n	<div class="container">\n		<div class="footer-contacts">\n			<h2>Контактная информация</h2>\n			<div class="address"><span class="footer-small-text" style="">[[++f.officename]]</span>\n				[[++f.officelocation]]\n		</div>\n			<div class="tel"><span class="footer-small-text">Телефон:</span>\n           [[++f.mainphone]]<br>\n            <span class="footer-small-text">Тел./факс:</span>\n            [[++f.fax]]</div>\n			<div class="date-time"><span class="footer-small-text">Режим работы <br/>[[++f.workinghours]]</span></div>\n		</div>\n		<div class="footer-form">\n			<h2>Форма обратной связи</h2>\n			<div class="form-wrapper">\n			    [[AjaxForm?\n                	&snippet=`FormIt`\n                	&form=`custom_tpl.AjaxForm.example`\n                	&hooks=`email`\n                	&emailTpl=`emailTmpl` \n                	&emailSubject=`Message from Visualisation.`\n                	&emailTo=`[[++f.email]]`\n                	&validate=`name:required,message:required,email:required`\n                	&validationErrorMessage=`Something went wrong!`\n                	&successMessage=`It''s ok!`\n                	&frontend_js=`[[+assetsUrl]]js/c_default.js`\n                ]]\n				\n			</div>\n		</div>\n	</div>\n	<div class="copyright-footer container">\n		<span>[[++f.copyright]]</span>\n	</div>\n</div>\n<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>\n[[+MinifyX.javascript]]\n<script src="/assets/js/custom.js"></script>', 0, 'a:0:{}', 0, ''),
(14, 0, 0, 'tpl.mechanism', '', 0, 0, 0, '<div>\n	<img src="[[+img]]" alt="">\n	<p>[[+title]]</p>\n</div>', 0, 'a:0:{}', 0, ''),
(7, 1, 0, 'tpl.oneNews', '', 0, 5, 0, '<div class="one-news-inner-in-list latest-news-block">\n    <a href="[[~[[+id]]]]">[[+introtext]]</a>\n    <div class="latest-news-block-meta">\n        <span>[[!dateAgo? &dateFormat=`d F Y` &input=`[[+publishedon]]`]]</span><span class="divider-main-meta">|</span>[[#[[#[[+id]].parent]].pagetitle]]<span class="divider-main-meta">|</span><a href="[[~[[+id]]]]">Подробнее</a>\n    </div>\n</div>', 0, 'a:0:{}', 0, ''),
(8, 1, 0, 'tpl.oneNews_latest', '', 0, 5, 0, '<div class="col-xs-4 latest-news-block">\n	<a href="[[~[[+id]]]]">[[+introtext]]</a>\n	<div class="latest-news-block-meta">\n		<span>[[!dateAgo? &dateFormat=`d F Y` &input=`[[+publishedon]]`]]</span><span class="divider-main-meta">|</span><a href="[[~[[+id]]]]">Подробнее</a>\n	</div>\n</div>', 0, 'a:0:{}', 0, ''),
(9, 1, 0, 'custom_tpl.AjaxForm.example_cp', '', 0, 3, 0, '<form id="contact-form" class="contact-form ajax_form af_example form-horizontal" method="post" action="" style="display: block;">\n	  <div class="form-group">\n			<input type="text" class="form-control" id="form-name" name="name" value="[[+fi.name]]" placeholder="Ваше имя">\n			<span class="error_name">[[+fi.error.name]]</span>\n	  </div>\n	  <div class="form-group">\n			<input type="email" class="form-control" id="form-email" name="email" value="[[+fi.email]]" placeholder="Адрес эл. почты">\n				<span class="error_email">[[+fi.error.email]]</span>\n	  </div>\n	  <div class="control-group">\n			<textarea id="af_message" name="message" class="form-control" placeholder="Сообщение" style="height: 80px;">[[+fi.message]]</textarea>\n			<span class="error_message">[[+fi.error.message]]</span>\n	</div>\n	  <button type="submit" class="btn btn-primary">Отправить</button>\n	  <span class="message-span-form"></span>\n	  <div class="row">\n		<div class="col-md-12">\n			<div class="form-process-contact"></div>\n		</div>\n	</div>\n		[[+fi.success:is=`1`:then=`\n<div class="alert alert-success">[[+fi.successMessage]]</div>\n`]]\n[[+fi.validation_error:is=`1`:then=`\n<div class="alert alert-danger">[[+fi.validation_error_message]]</div>\n`]]\n</form>', 0, 'a:0:{}', 0, 'core/components/ajaxform/elements/chunks/chunk.example.tpl'),
(10, 0, 0, 'emailTmpl_cp', '', 0, 3, 0, '<div>\n    <p>Здравствуйте!</p>\n    <p>На вашем сайте <a href="http://visualisation.wi6.ru/">visualisation.wi6.ru</a> была отправлена форма со страницы "Контакты".</p>\n    <p>Отправитель указал следующие данные.</p>\n    <p>Имя: <b>[[+name:default=`не указано`]]</b></p>\n    <p>Электронная почта: <b><a href="mailto:[[+email:default=`не указано`]]">[[+email:default=`не указано`]]</a></b></p>\n    <p>Сообщение отправителя:</p>\n    <p><strong>[[+message]]</strong></p>\n</div>', 0, 'a:0:{}', 0, ''),
(12, 0, 0, 'tpl.oneReport', 'Шаблон вывода одного отчета со списком файлов', 0, 9, 0, '<div class="one-report-in-list">\n    <p class="report-title">[[+pagetitle]]</p>\n    <span>[[!dateAgo? &dateFormat=`d F Y` &input=`[[+publishedon]]`]]</span>\n    <div class="file-attached-list">\n        [[!FileAttach? &resource=`[[+id]]` &sortby=`rank` &showSize=`true`  &privateUrl=`1`]]\n    </div>\n</div>', 0, 'a:0:{}', 0, ''),
(11, 0, 0, 'head', '', 0, 4, 0, '<head>\n    <meta charset="utf-8">\n    <meta http-equiv="X-UA-Compatible" content="IE=edge">\n    <meta name="description" content="">\n    <meta name="author" content="">\n    <link rel="icon" href="favicon.ico">\n    <title>[[!Title]] / [[++site_name]]</title>\n    <base href="[[++site_url]]" />\n    <link href="/assets/css/bootstrap.min.css" rel="stylesheet">\n    <link href="/assets/css/non-responsive.css" rel="stylesheet">\n    <!--[if lt IE 9]><script src="../../assets/js/ie8-responsive-file-warning.js"></script><![endif]-->\n    <!--<script src="/assets/js/ie-emulation-modes-warning.js"></script>-->\n    <!--[if lt IE 9]>\n      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>\n      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>\n    <![endif]-->\n    [[MinifyX? \n        &minifyJs=`1`\n        &jsSources=`\n            /assets/js/bootstrap.min.js,\n            /assets/js/ie10-viewport-bug-workaround.js,\n            /assets/js/jquery.smoothscroll.js,\n            /assets/js/ie-emulation-modes-warning.js\n        `\n    ]]\n    [[+MinifyX.css]]\n</head>', 0, 'a:0:{}', 0, ''),
(13, 1, 0, 'FileAttachTpl', '', 0, 11, 0, '<!--<p>[[+description:notempty=`<strong>[[+description]]</strong><br/>`]]\n<a href="[[+url]]">[[+name]]</a> <span class="badge">[[+download]]</span>\n[[+size:notempty=`<br/><small>Size: [[+size]] bytes</small>`]]\n[[+hash:notempty=`<br/><small>SHA1: [[+hash]]</small>`]]</p>\n-->\n<div class="one-attached-file">\n            <div class="attached-file-name pull-left" data-descr="[[+description:notempty=`[[+description]]`]]">[[+description:isequalto=``:then=`[[+name]]`:else=`[[+description]]`]]</div>\n            <div class="attached-file-size pull-left"><span class="report-file-size">[[+size]]</span> KB</div>\n            <div class="attached-file-link pull-right"><a href="[[+url]]" download class="btn btn-primary"><span class="glyphicon glyphicon-download-alt" style="color: #fff;margin-right: 8px;"  aria-hidden="true"></span> Скачать</a></div>\n        </div>', 0, 'a:0:{}', 1, 'core/components/fileattach/elements/chunks/chunk.item.tpl');

-- --------------------------------------------------------

--
-- Table structure for table `modx_site_plugins`
--

CREATE TABLE IF NOT EXISTS `modx_site_plugins` (
`id` int(10) unsigned NOT NULL,
  `source` int(10) unsigned NOT NULL DEFAULT '0',
  `property_preprocess` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `name` varchar(50) NOT NULL DEFAULT '',
  `description` varchar(255) NOT NULL DEFAULT '',
  `editor_type` int(11) NOT NULL DEFAULT '0',
  `category` int(11) NOT NULL DEFAULT '0',
  `cache_type` tinyint(1) NOT NULL DEFAULT '0',
  `plugincode` mediumtext NOT NULL,
  `locked` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `properties` text,
  `disabled` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `moduleguid` varchar(32) NOT NULL DEFAULT '',
  `static` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `static_file` varchar(255) NOT NULL DEFAULT ''
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;

--
-- Dumping data for table `modx_site_plugins`
--

INSERT INTO `modx_site_plugins` (`id`, `source`, `property_preprocess`, `name`, `description`, `editor_type`, `category`, `cache_type`, `plugincode`, `locked`, `properties`, `disabled`, `moduleguid`, `static`, `static_file`) VALUES
(1, 0, 0, 'Ace', 'Ace code editor plugin for MODx Revolution', 0, 0, 0, '/**\n * Ace Source Editor Plugin\n *\n * Events: OnManagerPageBeforeRender, OnRichTextEditorRegister, OnSnipFormPrerender,\n * OnTempFormPrerender, OnChunkFormPrerender, OnPluginFormPrerender,\n * OnFileCreateFormPrerender, OnFileEditFormPrerender, OnDocFormPrerender\n *\n * @author Danil Kostin <danya.postfactum(at)gmail.com>\n *\n * @package ace\n */\nif ($modx->event->name == ''OnRichTextEditorRegister'') {\n    $modx->event->output(''Ace'');\n    return;\n}\n\nif ($modx->getOption(''which_element_editor'', null, ''Ace'') !== ''Ace'') {\n    return;\n}\n\n$ace = $modx->getService(''ace'', ''Ace'', $modx->getOption(''ace.core_path'', null, $modx->getOption(''core_path'').''components/ace/'').''model/ace/'');\n\n$ace->initialize();\n\n$extensionMap = array(\n    ''tpl''   => ''text/html'',\n    ''htm''   => ''text/html'',\n    ''html''  => ''text/html'',\n    ''css''   => ''text/css'',\n    ''scss''  => ''text/x-scss'',\n    ''less''  => ''text/x-less'',\n    ''svg''   => ''image/svg+xml'',\n    ''xml''   => ''application/xml'',\n    ''xsl''   => ''application/xml'',\n    ''js''    => ''application/javascript'',\n    ''json''  => ''application/json'',\n    ''php''   => ''application/x-php'',\n    ''sql''   => ''text/x-sql'',\n    ''txt''   => ''text/plain'',\n);\n\n// Defines wether we should highlight modx tags\n$modxTags = false;\nswitch ($modx->event->name) {\n    case ''OnSnipFormPrerender'':\n        $field = ''modx-snippet-snippet'';\n        $mimeType = ''application/x-php'';\n        break;\n    case ''OnTempFormPrerender'':\n        $field = ''modx-template-content'';\n        $mimeType = ''text/html'';\n        $modxTags = true;\n        break;\n    case ''OnChunkFormPrerender'':\n        $field = ''modx-chunk-snippet'';\n        if ($modx->controller->chunk && $modx->controller->chunk->isStatic()) {\n            $extension = pathinfo($modx->controller->chunk->getSourceFile(), PATHINFO_EXTENSION);\n            $mimeType = isset($extensionMap[$extension]) ? $extensionMap[$extension] : ''text/plain'';\n        } else {\n            $mimeType = ''text/html'';\n        }\n        $modxTags = true;\n        break;\n    case ''OnPluginFormPrerender'':\n        $field = ''modx-plugin-plugincode'';\n        $mimeType = ''application/x-php'';\n        break;\n    case ''OnFileCreateFormPrerender'':\n        $field = ''modx-file-content'';\n        $mimeType = ''text/plain'';\n        break;\n    case ''OnFileEditFormPrerender'':\n        $field = ''modx-file-content'';\n        $extension = pathinfo($scriptProperties[''file''], PATHINFO_EXTENSION);\n        $mimeType = isset($extensionMap[$extension]) ? $extensionMap[$extension] : ''text/plain'';\n        $modxTags = $extension == ''tpl'';\n        break;\n    case ''OnDocFormPrerender'':\n        if (!$modx->controller->resourceArray) {\n            return;\n        }\n        $field = ''ta'';\n        $mimeType = $modx->getObject(''modContentType'', $modx->controller->resourceArray[''content_type''])->get(''mime_type'');\n        if ($modx->getOption(''use_editor'')){\n            $richText = $modx->controller->resourceArray[''richtext''];\n            $classKey = $modx->controller->resourceArray[''class_key''];\n            if ($richText || in_array($classKey, array(''modStaticResource'',''modSymLink'',''modWebLink'',''modXMLRPCResource''))) {\n                $field = false;\n            }\n        }\n\n        $modxTags = true;\n        break;\n    default:\n        return;\n}\n\n$modxTags = json_encode($modxTags);\n$script = "";\nif ($field) {\n    $script .= "MODx.ux.Ace.replaceComponent(''$field'', ''$mimeType'', $modxTags);";\n}\n\nif ($modx->event->name == ''OnDocFormPrerender'' && !$modx->getOption(''use_editor'')) {\n    $script .= "MODx.ux.Ace.replaceTextAreas(Ext.query(''.modx-richtext''));";\n}\n\nif ($script) {\n    $modx->controller->addHtml(''<script>Ext.onReady(function() {'' . $script . ''});</script>'');\n}', 0, 'a:0:{}', 0, '', 1, 'ace/elements/plugins/ace.plugin.php'),
(2, 0, 0, 'Collections', '', 0, 10, 0, '/**\n * Collections\n *\n * DESCRIPTION\n *\n * This plugin inject JS to handle proper working of close buttons in Resource''s panel (OnDocFormPrerender)\n * This plugin handles setting proper show_in_tree parameter (OnBeforeDocFormSave, OnResourceSort)\n *\n */\n$corePath = $modx->getOption(''collections.core_path'', null, $modx->getOption(''core_path'', null, MODX_CORE_PATH) . ''components/collections/'');\n/** @var Collections $collections */\n$collections = $modx->getService(\n    ''collections'',\n    ''Collections'',\n    $corePath . ''model/collections/'',\n    array(\n        ''core_path'' => $corePath\n    )\n);\n\n$className = ''Collections'' . $modx->event->name;\n\n$modx->loadClass(''CollectionsPlugin'', $collections->getOption(''modelPath'') . ''collections/events/'', true, true);\n$modx->loadClass($className, $collections->getOption(''modelPath'') . ''collections/events/'', true, true);\n\nif (class_exists($className)) {\n    $handler = new $className($modx, $scriptProperties);\n    $handler->run();\n}\n\nreturn;', 0, 'a:0:{}', 0, '', 0, ''),
(3, 1, 0, 'FileAttach', '', 0, 11, 0, '/**\n * FileAttach\n *\n * Copyright 2015 by Vitaly Checkryzhev <13hakta@gmail.com>\n *\n * This file is part of FileAttach, tool to attach files to resources with\n * MODX Revolution''s Manager.\n *\n * FileAttach is free software; you can redistribute it and/or modify it under the\n * terms of the GNU General Public License as published by the Free Software\n * Foundation version 3,\n *\n * FileAttach is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * FileAttach; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package FileAttach\n*/\n\nswitch ($modx->event->name) {\n // Add a custom tab to the MODX create/edit resource pages\n case ''OnDocFormPrerender'':\n\n  // Check access\n  if (!$modx->hasPermission(''fileattach.doclist'')) return;\n\n  // Skip form building when resource template is not in permitted list\n  $templates = $modx->getOption(''fileattach.templates'');\n\n  if ($templates != '''') {\n   $templatelist = explode('','', $templates);\n   $template = is_object($resource)? $resource->get(''template'') : 0;\n   if (!in_array($template, $templatelist)) return;\n  }\n\n  $modx->controller->addLexiconTopic(''fileattach:default'');\n\n  $corePath = $modx->getOption(''fileattach.core_path'', null, $modx->getOption(''core_path'') . ''components/fileattach/'');\n  require_once $corePath . ''model/fileattach/fileattach.class.php'';\n\n  $modx->FileAttach = new FileAttach($modx);\n  $modx->regClientStartupScript($modx->FileAttach->config[''jsUrl''] . ''mgr/fileattach.js'');\n  $modx->regClientStartupScript($modx->FileAttach->config[''jsUrl''] . ''mgr/widgets/items.grid.js'');\n  $modx->regClientStartupScript($modx->FileAttach->config[''jsUrl''] . ''mgr/filestab.js'');\n\n  $modx->regClientStartupHTMLBlock(''<script type="text/javascript">\n	 FileAttach.config = '' . $modx->toJSON($modx->FileAttach->config) . '';\n	 FileAttach.config.connector_url = "'' . $modx->FileAttach->config[''connectorUrl''] . ''";\n	</script>'');\n  break;\n}', 0, NULL, 0, '', 1, 'core/components/fileattach/elements/plugins/plugin.filestab.php'),
(4, 1, 0, 'MinifyX', '', 0, 12, 0, 'switch ($modx->event->name) {\n\n	case ''OnSiteRefresh'':\n		if ($MinifyX = $modx->getService(''minifyx'',''MinifyX'', MODX_CORE_PATH.''components/minifyx/model/minifyx/'')) {\n			/** @var MinifyX $MinifyX */\n			$MinifyX = new MinifyX($modx, array());\n			if ($MinifyX->clearCache()) {\n				$modx->log(modX::LOG_LEVEL_INFO, $modx->lexicon(''refresh_default'').'': MinifyX'');\n			}\n		}\n		break;\n\n	case ''OnWebPagePrerender'':\n		$time = microtime(true);\n		// Process scripts and styles\n		if ($modx->getOption(''minifyx_process_registered'', null, false, true)) {\n			if (!$modx->getService(''minifyx'',''MinifyX'', MODX_CORE_PATH.''components/minifyx/model/minifyx/'')) {return false;}\n\n			$current = array(\n				''head'' => $modx->sjscripts,\n				''body'' => $modx->jscripts,\n			);\n			$included = $excluded = $prepared = $raw = array(\n				''head'' => array(''css'' => array(), ''js'' => array()),\n				''body'' => array(''css'' => array(), ''js'' => array()),\n			);\n			$exclude = $modx->getOption(''minifyx_exclude_registered'');\n\n			// Split all scripts and styles by type\n			foreach ($current as $key => $value) {\n				foreach ($value as $v) {\n					if (preg_match(''/<(?:link|script).*?(?:href|src)=[\\''|"](.*?)[\\''|"]/'', $v, $tmp)) {\n						if (strpos($tmp[1], ''.css'') !== false) {\n							if (!empty($exclude) && preg_match($exclude, $tmp[1])) {\n								$excluded[$key][''css''][] = $tmp[1];\n							}\n							else {\n								$included[$key][''css''][] = $tmp[1];\n							}\n						}\n						if (strpos($tmp[1], ''.js'') !== false) {\n							if (!empty($exclude) && preg_match($exclude, $tmp[1])) {\n								$excluded[$key][''js''][] = $tmp[1];\n							}\n							else {\n								$included[$key][''js''][] = $tmp[1];\n							}\n						}\n					}\n					elseif (strpos($v, ''<script'') !== false) {\n						$raw[$key][''js''][] = trim(preg_replace(''#<!--.*?-->(\\n|)#s'', '''', $v));\n					}\n					elseif (strpos($v, ''<style'') !== false) {\n						$raw[$key][''css''][] = trim(preg_replace(''#/\\*.*?\\*/(\\n|)#s'', '''', $v));\n					}\n				}\n			}\n\n			// Main options for MinifyX\n			$scriptProperties = array(\n				''cacheFolder'' => $modx->getOption(''minifyx_cacheFolder'', null, ''/assets/components/minifyx/cache/'', true),\n				''forceUpdate'' => $modx->getOption(''minifyx_forceUpdate'', null, false, true),\n				''minifyJs'' => $modx->getOption(''minifyx_minifyJs'', null, false, true),\n				''minifyCss'' => $modx->getOption(''minifyx_minifyCss'', null, false, true),\n				''jsFilename'' => $modx->getOption(''minifyx_jsFilename'', null, ''all'', true),\n				''cssFilename'' => $modx->getOption(''minifyx_cssFilename'', null, ''all'', true),\n			);\n\n			/** @var MinifyX $MinifyX */\n			$MinifyX = new MinifyX($modx, $scriptProperties);\n			if (!$MinifyX->prepareCacheFolder()) {\n				$this->modx->log(modX::LOG_LEVEL_ERROR, ''[MinifyX] Could not create cache dir "''.$scriptProperties[''cacheFolder''].''"'');\n				return;\n			}\n			$cacheFolderUrl = MODX_BASE_URL . str_replace(MODX_BASE_PATH, '''', $MinifyX->config[''cacheFolder'']);\n\n			// Process raw scripts and styles\n			$tmp_dir = $MinifyX->getTmpDir() . ''resources/'' . $modx->resource->id . ''/'';\n			$MinifyX->makeDir($tmp_dir);\n			foreach ($raw as $key => $value) {\n				foreach ($value as $type => $rows) {\n					$tmp = '''';\n					if ($type == ''css'' && $modx->getOption(''minifyx_processRawCss'', null, false, true) ||\n						$type == ''js'' && $modx->getOption(''minifyx_processRawJs'', null, false, true)) {\n\n						$text = '''';\n						foreach ($rows as $text) {\n							$text = preg_replace(''#^<(script|style).*?>#'', '''', $text);\n							$text = preg_replace(''#</(script|style)>$#'', '''', $text);\n							$tmp .= $text;\n						}\n\n						if (!empty($tmp)) {\n							$file = sha1($tmp) . ''.'' . $type;\n							if (!file_exists($tmp_dir . $file)) {\n								file_put_contents($tmp_dir . $file, $tmp);\n							}\n							$included[$key][$type][] = $tmp_dir . $file;\n							$raw[$key][$type] = array();\n						}\n					}\n				}\n			}\n\n			// Combine and minify files\n			foreach ($included as $key => $value) {\n				foreach ($value as $type => $files) {\n					if (empty($files)) {continue;}\n\n					$filename = $MinifyX->config[$type.''Filename''] . ''_'';\n					$extension = $MinifyX->config[$type.''Ext''];\n\n					$files = $MinifyX->prepareFiles(implode('','', $files));\n					$properties = array(\n						''minify'' => $MinifyX->config[''minify''.ucfirst($type)]\n								? ''true''\n								: ''false'',\n					);\n\n					$result = $MinifyX->Munee($files, $properties);\n					$file = $MinifyX->saveFile($result, $filename, $extension);\n					if (!empty($file)) {\n						$prepared[$key][$type][] = $cacheFolderUrl . $file;\n					}\n				}\n			}\n\n			// Combine files by type\n			$final = array(\n				''head'' => array_merge(\n					$excluded[''head''][''css''], $prepared[''head''][''css''], $raw[''head''][''css''],\n					$excluded[''head''][''js''], $prepared[''head''][''js''], $raw[''head''][''js'']\n				),\n				''body'' => array_merge(\n					$excluded[''body''][''css''], $prepared[''body''][''css''], $raw[''body''][''css''],\n					$excluded[''body''][''js''], $prepared[''body''][''js''], $raw[''body''][''js'']\n				),\n			);\n\n			// Push files to tags\n			foreach ($final as &$value) {\n				foreach ($value as &$file) {\n					if (strpos($file, ''<script'') === false && strpos($file, ''<style'') === false) {\n						$file = preg_match(''/\\.css$/iu'', $file)\n							? ''<link rel="stylesheet" href="'' . $file . ''" type="text/css" />''\n							: ''<script type="text/javascript" src="'' . $file . ''"></script>'';\n				}\n				}\n			}\n\n			// Replace tags in web page\n			$modx->resource->_output = str_replace(\n				array($modx->getRegisteredClientStartupScripts() . "\\n</head>", $modx->getRegisteredClientScripts() . "\\n</body>"),\n				array(implode("\\n", $final[''head'']) . "\\n</head>", implode("\\n", $final[''body'']) . "\\n</body>"),\n				$modx->resource->_output\n			);\n		}\n\n		// Process images\n		if ($modx->getOption(''minifyx_process_images'', null, false, true)) {\n			if (!$modx->getService(''minifyx'',''MinifyX'', MODX_CORE_PATH.''components/minifyx/model/minifyx/'')) {return false;}\n\n			$connector = $modx->getOption(''minifyx_connector'', null, ''/assets/components/minifyx/munee.php'', true);\n			$exclude = $modx->getOption(''minifyx_exclude_images'');\n			$replace = array(''from'' => array(), ''to'' => array());\n			$site_url = $modx->getOption(''site_url'');\n			$default = $modx->getOption(''minifyx_images_filters'', null, '''', true);\n\n			preg_match_all(''/<img.*?>/i'', $modx->resource->_output, $tags);\n			foreach ($tags[0] as $tag) {\n				if (preg_match($exclude, $tag)) {\n					continue;\n				}\n				elseif (preg_match_all(''/(src|height|width|filters)=[\\''|"](.*?)[\\''|"]/i'', $tag, $properties)) {\n					if (count($properties[0]) >= 2) {\n						$file = $connector . ''?files='';\n						$resize = '''';\n						$filters = '''';\n						$tmp = array(''from'' => array(), ''to'' => array());\n\n						foreach ($properties[1] as $k => $v) {\n							if ($v == ''src'') {\n								$src = $properties[2][$k];\n								if (strpos($src, ''://'') !== false) {\n									if (strpos($src, $site_url) !== false) {\n										$src = str_replace($site_url, '''', $src);\n									}\n									else {\n										// Image from 3rd party domain\n										continue;\n									}\n								}\n								$file .= $src;\n								$tmp[''from''][''src''] = $properties[2][$k];\n							}\n							elseif ($v == ''height'' || $v == ''width'') {\n								$resize .=  $v[0] . ''[''.$properties[2][$k].'']'';\n							}\n							elseif ($v == ''filters'') {\n								$filters .= $properties[2][$k];\n								$tmp[''from''][''filters''] = $properties[0][$k];\n								$tmp[''to''][''filters''] = '''';\n							}\n						}\n\n						if (!empty($tmp[''from''][''src''])) {\n							$resize .= isset($tmp[''from''][''filters''])\n								? $filters\n								: $default;\n							$tmp[''to''][''src''] = $file . ''?resize='' . $resize;\n\n							ksort($tmp[''from'']);\n							ksort($tmp[''to'']);\n\n							$replace[''from''][] = $tag;\n							$replace[''to''][] = str_replace($tmp[''from''], $tmp[''to''], $tag);\n						}\n					}\n				}\n			}\n\n			if (!empty($replace)) {\n				$modx->resource->_output = str_replace(\n					$replace[''from''],\n					$replace[''to''],\n					$modx->resource->_output\n				);\n			}\n		}\n\n		$modx->log(modX::LOG_LEVEL_INFO, ''[MinifyX] Total time for page "''.$modx->resource->id.''" = ''.(microtime(true) - $time));\n		break;\n}', 0, NULL, 0, '', 0, 'core/components/minifyx/elements/plugins/plugin.minifyx.php'),
(5, 0, 0, 'TinyMCERTE', '', 0, 13, 0, '/**\n * TinyMCE Rich Tech Editor\n *\n */\n$corePath = $modx->getOption(''tinymcerte.core_path'', null, $modx->getOption(''core_path'', null, MODX_CORE_PATH) . ''components/tinymcerte/'');\n/** @var TinyMCERTE $tinymcerte */\n$tinymcerte = $modx->getService(\n    ''tinymcerte'',\n    ''TinyMCERTE'',\n    $corePath . ''model/tinymcerte/'',\n    array(\n        ''core_path'' => $corePath\n    )\n);\n\n$className = ''TinyMCERTE'' . $modx->event->name;\n$modx->loadClass(''TinyMCERTEPlugin'', $tinymcerte->getOption(''modelPath'') . ''tinymcerte/events/'', true, true);\n$modx->loadClass($className, $tinymcerte->getOption(''modelPath'') . ''tinymcerte/events/'', true, true);\nif (class_exists($className)) {\n    /** @var TinyMCERTEPlugin $handler */\n    $handler = new $className($modx, $scriptProperties);\n    $handler->run();\n}\nreturn;', 0, 'a:0:{}', 0, '', 0, ''),
(6, 0, 0, 'ClientConfig', 'Sets system settings from the Client Config CMP.', 0, 0, 0, '/**\n * ClientConfig\n *\n * Copyright 2011 by Mark Hamstra <hello@markhamstra.com>\n *\n * ClientConfig is free software; you can redistribute it and/or modify it under the\n * terms of the GNU General Public License as published by the Free Software\n * Foundation; either version 2 of the License, or (at your option) any later\n * version.\n *\n * ClientConfig is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * ClientConfig; if not, write to the Free Software Foundation, Inc., 59 Temple\n * Place, Suite 330, Boston, MA 02111-1307 USA\n *\n * @package clientconfig\n *\n * @var modX $modx\n * @var int $id\n * @var string $mode\n * @var modResource $resource\n * @var modTemplate $template\n * @var modTemplateVar $tv\n * @var modChunk $chunk\n * @var modSnippet $snippet\n * @var modPlugin $plugin\n*/\n\n$eventName = $modx->event->name;\n\nswitch($eventName) {\n    case ''OnHandleRequest'':\n        /* Grab the class */\n        $path = $modx->getOption(''clientconfig.core_path'', null, $modx->getOption(''core_path'') . ''components/clientconfig/'');\n        $path .= ''model/clientconfig/'';\n        $clientConfig = $modx->getService(''clientconfig'',''ClientConfig'', $path);\n\n        /* If we got the class (gotta be careful of failed migrations), grab settings and go! */\n        if ($clientConfig instanceof ClientConfig) {\n            $settings = $clientConfig->getSettings();\n\n            /* Make settings available as [[++tags]] */\n            $modx->setPlaceholders($settings, ''+'');\n\n            /* Make settings available for $modx->getOption() */\n            foreach ($settings as $key => $value) {\n                $modx->setOption($key, $value);\n            }\n        }\n        break;\n}\n\nreturn;', 0, NULL, 0, '', 0, ''),
(7, 0, 0, 'MIGX', '', 0, 18, 0, '$corePath = $modx->getOption(''migx.core_path'',null,$modx->getOption(''core_path'').''components/migx/'');\n$assetsUrl = $modx->getOption(''migx.assets_url'', null, $modx->getOption(''assets_url'') . ''components/migx/'');\nswitch ($modx->event->name) {\n    case ''OnTVInputRenderList'':\n        $modx->event->output($corePath.''elements/tv/input/'');\n        break;\n    case ''OnTVInputPropertiesList'':\n        $modx->event->output($corePath.''elements/tv/inputoptions/'');\n        break;\n\n        case ''OnDocFormPrerender'':\n        $modx->controller->addCss($assetsUrl.''css/mgr.css'');\n        break; \n \n    /*          \n    case ''OnTVOutputRenderList'':\n        $modx->event->output($corePath.''elements/tv/output/'');\n        break;\n    case ''OnTVOutputRenderPropertiesList'':\n        $modx->event->output($corePath.''elements/tv/properties/'');\n        break;\n    \n    case ''OnDocFormPrerender'':\n        $assetsUrl = $modx->getOption(''colorpicker.assets_url'',null,$modx->getOption(''assets_url'').''components/colorpicker/''); \n        $modx->regClientStartupHTMLBlock(''<script type="text/javascript">\n        Ext.onReady(function() {\n            \n        });\n        </script>'');\n        $modx->regClientStartupScript($assetsUrl.''sources/ColorPicker.js'');\n        $modx->regClientStartupScript($assetsUrl.''sources/ColorMenu.js'');\n        $modx->regClientStartupScript($assetsUrl.''sources/ColorPickerField.js'');		\n        $modx->regClientCSS($assetsUrl.''resources/css/colorpicker.css'');\n        break;\n     */\n}\nreturn;', 0, 'a:0:{}', 0, '', 0, ''),
(8, 0, 0, 'MIGXquip', '', 0, 18, 0, '$quipCorePath = $modx->getOption(''quip.core_path'', null, $modx->getOption(''core_path'') . ''components/quip/'');\n//$assetsUrl = $modx->getOption(''migx.assets_url'', null, $modx->getOption(''assets_url'') . ''components/migx/'');\nswitch ($modx->event->name)\n{\n\n    case ''OnDocFormPrerender'':\n\n        \n        require_once $quipCorePath . ''model/quip/quip.class.php'';\n        $modx->quip = new Quip($modx);\n\n        $modx->lexicon->load(''quip:default'');\n        $quipconfig = $modx->toJson($modx->quip->config);\n        \n        $js = "\n        Quip.config = Ext.util.JSON.decode(''{$quipconfig}'');\n        console.log(Quip);";\n\n        //$modx->controller->addCss($assetsUrl . ''css/mgr.css'');\n        $modx->controller->addJavascript($modx->quip->config[''jsUrl''].''quip.js'');\n        $modx->controller->addHtml(''<script type="text/javascript">'' . $js . ''</script>'');\n        break;\n\n}\nreturn;', 0, 'a:0:{}', 1, '', 0, '');

-- --------------------------------------------------------

--
-- Table structure for table `modx_site_plugin_events`
--

CREATE TABLE IF NOT EXISTS `modx_site_plugin_events` (
  `pluginid` int(10) NOT NULL DEFAULT '0',
  `event` varchar(255) NOT NULL DEFAULT '',
  `priority` int(10) NOT NULL DEFAULT '0',
  `propertyset` int(10) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_site_plugin_events`
--

INSERT INTO `modx_site_plugin_events` (`pluginid`, `event`, `priority`, `propertyset`) VALUES
(1, 'OnChunkFormPrerender', 0, 0),
(1, 'OnPluginFormPrerender', 0, 0),
(1, 'OnSnipFormPrerender', 0, 0),
(1, 'OnTempFormPrerender', 0, 0),
(1, 'OnFileEditFormPrerender', 0, 0),
(1, 'OnFileCreateFormPrerender', 0, 0),
(1, 'OnDocFormPrerender', 0, 0),
(1, 'OnRichTextEditorRegister', 0, 0),
(1, 'OnManagerPageBeforeRender', 0, 0),
(2, 'OnManagerPageInit', 0, 0),
(2, 'OnBeforeDocFormSave', 0, 0),
(2, 'OnResourceBeforeSort', 0, 0),
(2, 'OnDocFormPrerender', 0, 0),
(2, 'OnBeforeEmptyTrash', 0, 0),
(2, 'OnDocFormRender', 0, 0),
(3, 'OnDocFormPrerender', 0, 0),
(4, 'OnWebPagePrerender', 0, 0),
(4, 'OnSiteRefresh', 0, 0),
(5, 'OnRichTextBrowserInit', 0, 0),
(5, 'OnRichTextEditorRegister', 0, 0),
(5, 'OnRichTextEditorInit', 0, 0),
(6, 'OnHandleRequest', 0, 0),
(7, 'OnDocFormPrerender', 0, 0),
(7, 'OnTVInputPropertiesList', 0, 0),
(7, 'OnTVInputRenderList', 0, 0),
(8, 'OnDocFormPrerender', 0, 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_site_snippets`
--

CREATE TABLE IF NOT EXISTS `modx_site_snippets` (
`id` int(10) unsigned NOT NULL,
  `source` int(10) unsigned NOT NULL DEFAULT '0',
  `property_preprocess` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `name` varchar(50) NOT NULL DEFAULT '',
  `description` varchar(255) NOT NULL DEFAULT '',
  `editor_type` int(11) NOT NULL DEFAULT '0',
  `category` int(11) NOT NULL DEFAULT '0',
  `cache_type` tinyint(1) NOT NULL DEFAULT '0',
  `snippet` mediumtext,
  `locked` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `properties` text,
  `moduleguid` varchar(32) NOT NULL DEFAULT '',
  `static` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `static_file` varchar(255) NOT NULL DEFAULT ''
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=39 ;

--
-- Dumping data for table `modx_site_snippets`
--

INSERT INTO `modx_site_snippets` (`id`, `source`, `property_preprocess`, `name`, `description`, `editor_type`, `category`, `cache_type`, `snippet`, `locked`, `properties`, `moduleguid`, `static`, `static_file`) VALUES
(1, 0, 0, 'FormIt', 'A dynamic form processing snippet.', 0, 1, 0, '/**\n * FormIt\n *\n * Copyright 2009-2012 by Shaun McCormick <shaun@modx.com>\n *\n * FormIt is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * FormIt is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * FormIt; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package formit\n */\n/**\n * FormIt\n *\n * A dynamic form processing Snippet for MODx Revolution.\n *\n * @package formit\n */\nrequire_once $modx->getOption(''formit.core_path'',null,$modx->getOption(''core_path'',null,MODX_CORE_PATH).''components/formit/'').''model/formit/formit.class.php'';\n$fi = new FormIt($modx,$scriptProperties);\n$fi->initialize($modx->context->get(''key''));\n$fi->loadRequest();\n\n$fields = $fi->request->prepare();\nreturn $fi->request->handle($fields);', 0, 'a:57:{s:5:"hooks";a:7:{s:4:"name";s:5:"hooks";s:4:"desc";s:22:"prop_formit.hooks_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:8:"preHooks";a:7:{s:4:"name";s:8:"preHooks";s:4:"desc";s:25:"prop_formit.prehooks_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:9:"submitVar";a:7:{s:4:"name";s:9:"submitVar";s:4:"desc";s:26:"prop_formit.submitvar_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:8:"validate";a:7:{s:4:"name";s:8:"validate";s:4:"desc";s:25:"prop_formit.validate_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:6:"errTpl";a:7:{s:4:"name";s:6:"errTpl";s:4:"desc";s:23:"prop_formit.errtpl_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:37:"<span class="error">[[+error]]</span>";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:22:"validationErrorMessage";a:7:{s:4:"name";s:22:"validationErrorMessage";s:4:"desc";s:39:"prop_formit.validationerrormessage_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:96:"<p class="error">A form validation error occurred. Please check the values you have entered.</p>";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:22:"validationErrorBulkTpl";a:7:{s:4:"name";s:22:"validationErrorBulkTpl";s:4:"desc";s:39:"prop_formit.validationerrorbulktpl_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:19:"<li>[[+error]]</li>";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:26:"trimValuesBeforeValidation";a:7:{s:4:"name";s:26:"trimValuesBeforeValidation";s:4:"desc";s:43:"prop_formit.trimvaluesdeforevalidation_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:1;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:16:"customValidators";a:7:{s:4:"name";s:16:"customValidators";s:4:"desc";s:33:"prop_formit.customvalidators_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:20:"clearFieldsOnSuccess";a:7:{s:4:"name";s:20:"clearFieldsOnSuccess";s:4:"desc";s:37:"prop_formit.clearfieldsonsuccess_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:1;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:14:"successMessage";a:7:{s:4:"name";s:14:"successMessage";s:4:"desc";s:31:"prop_formit.successmessage_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:25:"successMessagePlaceholder";a:7:{s:4:"name";s:25:"successMessagePlaceholder";s:4:"desc";s:42:"prop_formit.successmessageplaceholder_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:17:"fi.successMessage";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:5:"store";a:7:{s:4:"name";s:5:"store";s:4:"desc";s:22:"prop_formit.store_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:0;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:17:"placeholderPrefix";a:7:{s:4:"name";s:17:"placeholderPrefix";s:4:"desc";s:34:"prop_formit.placeholderprefix_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:3:"fi.";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:9:"storeTime";a:7:{s:4:"name";s:9:"storeTime";s:4:"desc";s:26:"prop_formit.storetime_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";i:300;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:10:"allowFiles";a:7:{s:4:"name";s:10:"allowFiles";s:4:"desc";s:27:"prop_formit.allowfiles_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:1;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:15:"spamEmailFields";a:7:{s:4:"name";s:15:"spamEmailFields";s:4:"desc";s:32:"prop_formit.spamemailfields_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:5:"email";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"spamCheckIp";a:7:{s:4:"name";s:11:"spamCheckIp";s:4:"desc";s:28:"prop_formit.spamcheckip_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:0;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"recaptchaJs";a:7:{s:4:"name";s:11:"recaptchaJs";s:4:"desc";s:28:"prop_formit.recaptchajs_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:2:"{}";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:14:"recaptchaTheme";a:7:{s:4:"name";s:14:"recaptchaTheme";s:4:"desc";s:31:"prop_formit.recaptchatheme_desc";s:4:"type";s:4:"list";s:7:"options";a:4:{i:0;a:2:{s:4:"text";s:14:"formit.opt_red";s:5:"value";s:3:"red";}i:1;a:2:{s:4:"text";s:16:"formit.opt_white";s:5:"value";s:5:"white";}i:2;a:2:{s:4:"text";s:16:"formit.opt_clean";s:5:"value";s:5:"clean";}i:3;a:2:{s:4:"text";s:21:"formit.opt_blackglass";s:5:"value";s:10:"blackglass";}}s:5:"value";s:5:"clean";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:10:"redirectTo";a:7:{s:4:"name";s:10:"redirectTo";s:4:"desc";s:27:"prop_formit.redirectto_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:14:"redirectParams";a:7:{s:4:"name";s:14:"redirectParams";s:4:"desc";s:31:"prop_formit.redirectparams_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:7:"emailTo";a:7:{s:4:"name";s:7:"emailTo";s:4:"desc";s:24:"prop_formit.emailto_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"emailToName";a:7:{s:4:"name";s:11:"emailToName";s:4:"desc";s:28:"prop_formit.emailtoname_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:9:"emailFrom";a:7:{s:4:"name";s:9:"emailFrom";s:4:"desc";s:26:"prop_formit.emailfrom_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:13:"emailFromName";a:7:{s:4:"name";s:13:"emailFromName";s:4:"desc";s:30:"prop_formit.emailfromname_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:12:"emailReplyTo";a:7:{s:4:"name";s:12:"emailReplyTo";s:4:"desc";s:29:"prop_formit.emailreplyto_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:16:"emailReplyToName";a:7:{s:4:"name";s:16:"emailReplyToName";s:4:"desc";s:33:"prop_formit.emailreplytoname_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:7:"emailCC";a:7:{s:4:"name";s:7:"emailCC";s:4:"desc";s:24:"prop_formit.emailcc_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"emailCCName";a:7:{s:4:"name";s:11:"emailCCName";s:4:"desc";s:28:"prop_formit.emailccname_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:8:"emailBCC";a:7:{s:4:"name";s:8:"emailBCC";s:4:"desc";s:25:"prop_formit.emailbcc_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:12:"emailBCCName";a:7:{s:4:"name";s:12:"emailBCCName";s:4:"desc";s:29:"prop_formit.emailbccname_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:15:"emailReturnPath";a:7:{s:4:"name";s:15:"emailReturnPath";s:4:"desc";s:32:"prop_formit.emailreturnpath_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:12:"emailSubject";a:7:{s:4:"name";s:12:"emailSubject";s:4:"desc";s:29:"prop_formit.emailsubject_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:23:"emailUseFieldForSubject";a:7:{s:4:"name";s:23:"emailUseFieldForSubject";s:4:"desc";s:40:"prop_formit.emailusefieldforsubject_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:9:"emailHtml";a:7:{s:4:"name";s:9:"emailHtml";s:4:"desc";s:26:"prop_formit.emailhtml_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:1;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:20:"emailConvertNewlines";a:7:{s:4:"name";s:20:"emailConvertNewlines";s:4:"desc";s:37:"prop_formit.emailconvertnewlines_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:0;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:17:"emailMultiWrapper";a:7:{s:4:"name";s:17:"emailMultiWrapper";s:4:"desc";s:34:"prop_formit.emailmultiwrapper_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:10:"[[+value]]";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:19:"emailMultiSeparator";a:7:{s:4:"name";s:19:"emailMultiSeparator";s:4:"desc";s:36:"prop_formit.emailmultiseparator_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:7:"fiarTpl";a:7:{s:4:"name";s:7:"fiarTpl";s:4:"desc";s:22:"prop_fiar.fiartpl_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"fiarToField";a:7:{s:4:"name";s:11:"fiarToField";s:4:"desc";s:26:"prop_fiar.fiartofield_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:5:"email";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"fiarSubject";a:7:{s:4:"name";s:11:"fiarSubject";s:4:"desc";s:26:"prop_fiar.fiarsubject_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:30:"[[++site_name]] Auto-Responder";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:8:"fiarFrom";a:7:{s:4:"name";s:8:"fiarFrom";s:4:"desc";s:23:"prop_fiar.fiarfrom_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:12:"fiarFromName";a:7:{s:4:"name";s:12:"fiarFromName";s:4:"desc";s:27:"prop_fiar.fiarfromname_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"fiarReplyTo";a:7:{s:4:"name";s:11:"fiarReplyTo";s:4:"desc";s:26:"prop_fiar.fiarreplyto_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:15:"fiarReplyToName";a:7:{s:4:"name";s:15:"fiarReplyToName";s:4:"desc";s:30:"prop_fiar.fiarreplytoname_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:6:"fiarCC";a:7:{s:4:"name";s:6:"fiarCC";s:4:"desc";s:21:"prop_fiar.fiarcc_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:10:"fiarCCName";a:7:{s:4:"name";s:10:"fiarCCName";s:4:"desc";s:25:"prop_fiar.fiarccname_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:7:"fiarBCC";a:7:{s:4:"name";s:7:"fiarBCC";s:4:"desc";s:22:"prop_fiar.fiarbcc_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"fiarBCCName";a:7:{s:4:"name";s:11:"fiarBCCName";s:4:"desc";s:26:"prop_fiar.fiarbccname_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:8:"fiarHtml";a:7:{s:4:"name";s:8:"fiarHtml";s:4:"desc";s:23:"prop_fiar.fiarhtml_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:1;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:12:"mathMinRange";a:7:{s:4:"name";s:12:"mathMinRange";s:4:"desc";s:27:"prop_math.mathminrange_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";i:10;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:12:"mathMaxRange";a:7:{s:4:"name";s:12:"mathMaxRange";s:4:"desc";s:27:"prop_math.mathmaxrange_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";i:100;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:9:"mathField";a:7:{s:4:"name";s:9:"mathField";s:4:"desc";s:24:"prop_math.mathfield_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:4:"math";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:12:"mathOp1Field";a:7:{s:4:"name";s:12:"mathOp1Field";s:4:"desc";s:27:"prop_math.mathop1field_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:3:"op1";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:12:"mathOp2Field";a:7:{s:4:"name";s:12:"mathOp2Field";s:4:"desc";s:27:"prop_math.mathop2field_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:3:"op2";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:17:"mathOperatorField";a:7:{s:4:"name";s:17:"mathOperatorField";s:4:"desc";s:32:"prop_math.mathoperatorfield_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:8:"operator";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}}', '', 0, ''),
(2, 0, 0, 'FormItAutoResponder', 'Custom hook for FormIt to handle Auto-Response emails.', 0, 1, 0, '/**\n * FormIt\n *\n * Copyright 2009-2012 by Shaun McCormick <shaun@modx.com>\n *\n * FormIt is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * FormIt is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * FormIt; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package formit\n */\n/**\n * A custom FormIt hook for auto-responders.\n *\n * @var modX $modx\n * @var array $scriptProperties\n * @var FormIt $formit\n * @var fiHooks $hook\n * \n * @package formit\n */\n/* setup default properties */\n$tpl = $modx->getOption(''fiarTpl'',$scriptProperties,''fiarTpl'');\n$mailFrom = $modx->getOption(''fiarFrom'',$scriptProperties,$modx->getOption(''emailsender''));\n$mailFromName = $modx->getOption(''fiarFromName'',$scriptProperties,$modx->getOption(''site_name''));\n$mailSender = $modx->getOption(''fiarSender'',$scriptProperties,$modx->getOption(''emailsender''));\n$mailSubject = $modx->getOption(''fiarSubject'',$scriptProperties,''[[++site_name]] Auto-Responder'');\n$mailSubject = str_replace(array(''[[++site_name]]'',''[[++emailsender]]''),array($modx->getOption(''site_name''),$modx->getOption(''emailsender'')),$mailSubject);\n$fiarFiles = $modx->getOption(''fiarFiles'',$scriptProperties,false);\n$isHtml = $modx->getOption(''fiarHtml'',$scriptProperties,true);\n$toField = $modx->getOption(''fiarToField'',$scriptProperties,''email'');\n$multiSeparator = $modx->getOption(''fiarMultiSeparator'',$formit->config,"\\n");\n$multiWrapper = $modx->getOption(''fiarMultiWrapper'',$formit->config,"[[+value]]");\nif (empty($fields[$toField])) {\n    $modx->log(modX::LOG_LEVEL_ERROR,''[FormIt] Auto-responder could not find field `''.$toField.''` in form submission.'');\n    return false;\n}\n\n/* handle checkbox and array fields */\nforeach ($fields as $k => &$v) {\n    if (is_array($v)) {\n        $vOpts = array();\n        foreach ($v as $vKey => $vValue) {\n            if (is_string($vKey) && !empty($vKey)) {\n                $vKey = $k.''.''.$vKey;\n                $fields[$vKey] = $vValue;\n            } else {\n                $vOpts[] = str_replace(''[[+value]]'',$vValue,$multiWrapper);\n            }\n        }\n        $newValue = implode($multiSeparator,$vOpts);\n        if (!empty($vOpts)) {\n            $fields[$k] = $newValue;\n        }\n    }\n}\n\n/* setup placeholders */\n$placeholders = $fields;\n$mailTo= $fields[$toField];\n\n$message = $formit->getChunk($tpl,$placeholders);\n$modx->parser->processElementTags('''',$message,true,false);\n\n$modx->getService(''mail'', ''mail.modPHPMailer'');\n$modx->mail->reset();\n$modx->mail->set(modMail::MAIL_BODY,$message);\n$modx->mail->set(modMail::MAIL_FROM,$hook->_process($mailFrom,$placeholders));\n$modx->mail->set(modMail::MAIL_FROM_NAME,$hook->_process($mailFromName,$placeholders));\n$modx->mail->set(modMail::MAIL_SENDER,$hook->_process($mailSender,$placeholders));\n$modx->mail->set(modMail::MAIL_SUBJECT,$hook->_process($mailSubject,$placeholders));\n$modx->mail->address(''to'',$mailTo);\n$modx->mail->setHTML($isHtml);\n\n/* add attachments */\nif($fiarFiles){\n    $fiarFiles = explode('','', $fiarFiles);\n    foreach($fiarFiles AS $file){\n        $modx->mail->mailer->AddAttachment($file);\n    }\n}\n\n/* reply to */\n$emailReplyTo = $modx->getOption(''fiarReplyTo'',$scriptProperties,$mailFrom);\n$emailReplyTo = $hook->_process($emailReplyTo,$fields);\n$emailReplyToName = $modx->getOption(''fiarReplyToName'',$scriptProperties,$mailFromName);\n$emailReplyToName = $hook->_process($emailReplyToName,$fields);\nif (!empty($emailReplyTo)) {\n    $modx->mail->address(''reply-to'',$emailReplyTo,$emailReplyToName);\n}\n\n/* cc */\n$emailCC = $modx->getOption(''fiarCC'',$scriptProperties,'''');\nif (!empty($emailCC)) {\n    $emailCCName = $modx->getOption(''fiarCCName'',$scriptProperties,'''');\n    $emailCC = explode('','',$emailCC);\n    $emailCCName = explode('','',$emailCCName);\n    $numAddresses = count($emailCC);\n    for ($i=0;$i<$numAddresses;$i++) {\n        $etn = !empty($emailCCName[$i]) ? $emailCCName[$i] : '''';\n        if (!empty($etn)) $etn = $hook->_process($etn,$fields);\n        $emailCC[$i] = $hook->_process($emailCC[$i],$fields);\n        if (!empty($emailCC[$i])) {\n            $modx->mail->address(''cc'',$emailCC[$i],$etn);\n        }\n    }\n}\n\n/* bcc */\n$emailBCC = $modx->getOption(''fiarBCC'',$scriptProperties,'''');\nif (!empty($emailBCC)) {\n    $emailBCCName = $modx->getOption(''fiarBCCName'',$scriptProperties,'''');\n    $emailBCC = explode('','',$emailBCC);\n    $emailBCCName = explode('','',$emailBCCName);\n    $numAddresses = count($emailBCC);\n    for ($i=0;$i<$numAddresses;$i++) {\n        $etn = !empty($emailBCCName[$i]) ? $emailBCCName[$i] : '''';\n        if (!empty($etn)) $etn = $hook->_process($etn,$fields);\n        $emailBCC[$i] = $hook->_process($emailBCC[$i],$fields);\n        if (!empty($emailBCC[$i])) {\n            $modx->mail->address(''bcc'',$emailBCC[$i],$etn);\n        }\n    }\n}\n\nif (!$formit->inTestMode) {\n    if (!$modx->mail->send()) {\n        $modx->log(modX::LOG_LEVEL_ERROR,''[FormIt] An error occurred while trying to send the auto-responder email: ''.$modx->mail->mailer->ErrorInfo);\n        return false;\n    }\n}\n$modx->mail->reset();\nreturn true;', 0, NULL, '', 0, ''),
(3, 0, 0, 'FormItRetriever', 'Fetches a form submission for a user for displaying on a thank you page.', 0, 1, 0, '/**\n * FormIt\n *\n * Copyright 2009-2012 by Shaun McCormick <shaun@modx.com>\n *\n * FormIt is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * FormIt is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * FormIt; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package formit\n */\n/**\n * Retrieves a prior form submission that was stored with the &store property\n * in a FormIt call.\n *\n * @var modX $modx\n * @var array $scriptProperties\n * \n * @package formit\n */\nrequire_once $modx->getOption(''formit.core_path'',null,$modx->getOption(''core_path'').''components/formit/'').''model/formit/formit.class.php'';\n$fi = new FormIt($modx,$scriptProperties);\n\n/* setup properties */\n$placeholderPrefix = $modx->getOption(''placeholderPrefix'',$scriptProperties,''fi.'');\n$eraseOnLoad = $modx->getOption(''eraseOnLoad'',$scriptProperties,false);\n$redirectToOnNotFound = $modx->getOption(''redirectToOnNotFound'',$scriptProperties,false);\n\n/* fetch data from cache and set to placeholders */\n$fi->loadRequest();\n$fi->request->loadDictionary();\n$data = $fi->request->dictionary->retrieve();\nif (!empty($data)) {\n    /* set data to placeholders */\n    foreach ($data as $k=>$v) {\n        /*checkboxes & other multi-values are stored as arrays, must be imploded*/\n        if (is_array($v)) {\n            $data[$k] = implode('','',$v);\n        }\n    }\n    $modx->toPlaceholders($data,$placeholderPrefix,'''');\n    \n    /* if set, erase the data on load, otherwise depend on cache expiry time */\n    if ($eraseOnLoad) {\n        $fi->request->dictionary->erase();\n    }\n/* if the data''s not found, and we want to redirect somewhere if so, do here */\n} else if (!empty($redirectToOnNotFound)) {\n    $url = $modx->makeUrl($redirectToOnNotFound);\n    $modx->sendRedirect($url);\n}\nreturn '''';', 0, 'a:3:{s:17:"placeholderPrefix";a:7:{s:4:"name";s:17:"placeholderPrefix";s:4:"desc";s:31:"prop_fir.placeholderprefix_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:3:"fi.";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:20:"redirectToOnNotFound";a:7:{s:4:"name";s:20:"redirectToOnNotFound";s:4:"desc";s:34:"prop_fir.redirecttoonnotfound_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"eraseOnLoad";a:7:{s:4:"name";s:11:"eraseOnLoad";s:4:"desc";s:25:"prop_fir.eraseonload_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:0;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}}', '', 0, ''),
(4, 0, 0, 'FormItIsChecked', 'A custom output filter used with checkboxes/radios for checking checked status.', 0, 1, 0, '/**\n * FormIt\n *\n * Copyright 2009-2012 by Shaun McCormick <shaun@modx.com>\n *\n * FormIt is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * FormIt is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * FormIt; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package formit\n */\n/**\n * Custom output filter that returns checked="checked" if the value is set\n *\n * @var string $input\n * @var string $options\n * @package formit\n */\n$output = '' '';\nif ($input == $options) {\n    $output = '' checked="checked"'';\n}\n$input = $modx->fromJSON($input);\nif (!empty($input) && is_array($input) && in_array($options,$input)) {\n  $output = '' checked="checked"'';\n}\nreturn $output;', 0, NULL, '', 0, ''),
(5, 0, 0, 'FormItIsSelected', 'A custom output filter used with dropdowns for checking selected status.', 0, 1, 0, '/**\n * FormIt\n *\n * Copyright 2009-2012 by Shaun McCormick <shaun@modx.com>\n *\n * FormIt is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * FormIt is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * FormIt; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package formit\n */\n/**\n * Custom output filter that returns checked="checked" if the value is set\n *\n * @var string $input\n * @var string $options\n * @package formit\n */\n$output = '' '';\nif ($input == $options) {\n    $output = '' selected="selected"'';\n}\n$input = $modx->fromJSON($input);\nif(is_array($input)){\n    if (!empty($input) && is_array($input) && in_array($options,$input)) {\n      $output = '' selected="selected"'';\n    }\n}\nreturn $output;', 0, NULL, '', 0, ''),
(6, 0, 0, 'FormItCountryOptions', 'A utility snippet for generating a dropdown list of countries.', 0, 1, 0, '/**\n * FormIt\n *\n * Copyright 2009-2012 by Shaun McCormick <shaun@modx.com>\n *\n * FormIt is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * FormIt is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * FormIt; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package formit\n */\n/**\n * Automatically generates and outputs a country list for usage in forms\n *\n * @var modX $modx\n * @var array $scriptProperties\n * @package formit\n */\nrequire_once $modx->getOption(''formit.core_path'',null,$modx->getOption(''core_path'').''components/formit/'').''model/formit/formit.class.php'';\n$fi = new FormIt($modx,$scriptProperties);\n\n/** @var fiCountryOptions $co */\n$co = $fi->loadModule(''fiCountryOptions'',''countryOptions'',$scriptProperties);\n$co->initialize();\n$co->getData();\n$co->loadPrioritized();\n$co->iterate();\nreturn $co->output();', 0, 'a:10:{s:8:"selected";a:7:{s:4:"name";s:8:"selected";s:4:"desc";s:23:"prop_fico.selected_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:3:"tpl";a:7:{s:4:"name";s:3:"tpl";s:4:"desc";s:18:"prop_fico.tpl_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:6:"option";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:10:"useIsoCode";a:7:{s:4:"name";s:10:"useIsoCode";s:4:"desc";s:25:"prop_fico.useisocode_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:1;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"prioritized";a:7:{s:4:"name";s:11:"prioritized";s:4:"desc";s:26:"prop_fico.prioritized_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:11:"optGroupTpl";a:7:{s:4:"name";s:11:"optGroupTpl";s:4:"desc";s:26:"prop_fico.optgrouptpl_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:8:"optgroup";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:20:"prioritizedGroupText";a:7:{s:4:"name";s:20:"prioritizedGroupText";s:4:"desc";s:35:"prop_fico.prioritizedgrouptext_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:12:"allGroupText";a:7:{s:4:"name";s:12:"allGroupText";s:4:"desc";s:27:"prop_fico.allgrouptext_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:17:"selectedAttribute";a:7:{s:4:"name";s:17:"selectedAttribute";s:4:"desc";s:32:"prop_fico.selectedattribute_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:20:" selected="selected"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:13:"toPlaceholder";a:7:{s:4:"name";s:13:"toPlaceholder";s:4:"desc";s:28:"prop_fico.toplaceholder_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:7:"country";a:7:{s:4:"name";s:7:"country";s:4:"desc";s:22:"prop_fico.country_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:16:"[[++cultureKey]]";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}}', '', 0, ''),
(7, 0, 0, 'FormItStateOptions', 'A utility snippet for generating a dropdown list of U.S. states.', 0, 1, 0, '/**\n * FormIt\n *\n * Copyright 2009-2012 by Shaun McCormick <shaun@modx.com>\n *\n * FormIt is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * FormIt is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * FormIt; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package formit\n */\n/**\n * Automatically generates and outputs a U.S. state list for usage in forms\n * \n * @package formit\n */\nrequire_once $modx->getOption(''formit.core_path'',null,$modx->getOption(''core_path'').''components/formit/'').''model/formit/formit.class.php'';\n$fi = new FormIt($modx,$scriptProperties);\n\n/** @var fiStateOptions $so */\n$so = $fi->loadModule(''fiStateOptions'',''stateOptions'',$scriptProperties);\n$so->initialize();\n$so->getData();\n$so->iterate();\nreturn $so->output();', 0, 'a:6:{s:8:"selected";a:7:{s:4:"name";s:8:"selected";s:4:"desc";s:23:"prop_fiso.selected_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:3:"tpl";a:7:{s:4:"name";s:3:"tpl";s:4:"desc";s:18:"prop_fiso.tpl_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:6:"option";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:7:"useAbbr";a:7:{s:4:"name";s:7:"useAbbr";s:4:"desc";s:22:"prop_fiso.useabbr_desc";s:4:"type";s:13:"combo-boolean";s:7:"options";s:0:"";s:5:"value";b:1;s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:17:"selectedAttribute";a:7:{s:4:"name";s:17:"selectedAttribute";s:4:"desc";s:32:"prop_fiso.selectedattribute_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:20:" selected="selected"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:7:"country";a:7:{s:4:"name";s:7:"country";s:4:"desc";s:22:"prop_fiso.country_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:16:"[[++cultureKey]]";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}s:13:"toPlaceholder";a:7:{s:4:"name";s:13:"toPlaceholder";s:4:"desc";s:28:"prop_fiso.toplaceholder_desc";s:4:"type";s:9:"textfield";s:7:"options";s:0:"";s:5:"value";s:0:"";s:7:"lexicon";s:17:"formit:properties";s:4:"area";s:0:"";}}', '', 0, ''),
(8, 0, 0, 'FormItSaveForm', 'Save any form and export them to csv.', 0, 1, 0, '/**\n * FormIt\n *\n * Copyright 2011-12 by SCHERP Ontwikkeling <info@scherpontwikkeling.nl>\n * Copyright 2015 by Wieger Sloot <modx@sterc.nl>\n *\n * FormIt is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * FormIt is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * FormIt; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package formit\n */\n/**\n * A custom FormIt hook for saving filled-in forms. - Based on FormSave\n *\n * @var modX $modx\n * @var array $scriptProperties\n * @var FormIt $formit\n * @var fiHooks $hook\n * \n * @package formit\n */\n/* setup default properties */\n$values = $hook->getValues();\n$formName = $modx->getOption(''formName'', $formit->config, ''form-''.$modx->resource->get(''id''));\n$formFields = $modx->getOption(''formFields'', $formit->config, false);\n$fieldNames = $modx->getOption(''fieldNames'', $formit->config, false);\n\nif ($formFields) {\n    $formFields = explode('','', $formFields);\n    foreach($formFields as $k => $v) {\n        $formFields[$k] = trim($v);\n    }\n}\n\n// Build the data array\n$dataArray = array();\nif($formFields){\n    foreach($formFields as $field) {\n        $dataArray[$field] = (!isset($values[$field])) ? '''' : $values[$field];\n    }\n}else{\n    $dataArray = $values;\n}\n\n//Change the fieldnames\nif($fieldNames){\n    $newDataArray = array();\n    $fieldLabels = array();\n    $formFieldNames = explode('','', $fieldNames);\n    foreach($formFieldNames as $formFieldName){\n        list($name, $label) = explode(''=='', $formFieldName);\n        $fieldLabels[trim($name)] = trim($label);\n    }\n    foreach ($dataArray as $key => $value) {\n        if($fieldLabels[$key]){\n            $newDataArray[$fieldLabels[$key]] = $value;\n        }else{\n            $newDataArray[$key] = $value;\n        }\n    }\n    $dataArray = $newDataArray;\n}\n\n// Create obj\n$newForm = $modx->newObject(''FormItForm'');\n$newForm->fromArray(array(\n    ''form'' => $formName,\n    ''date'' => time(),\n    ''values'' => $dataArray,\n    ''ip'' => $_SERVER[''REMOTE_ADDR''],\n    ''context_key'' => $modx->resource->get(''context_key'')\n));\n$newForm->save();\n\nreturn true;', 0, NULL, '', 0, '');
INSERT INTO `modx_site_snippets` (`id`, `source`, `property_preprocess`, `name`, `description`, `editor_type`, `category`, `cache_type`, `snippet`, `locked`, `properties`, `moduleguid`, `static`, `static_file`) VALUES
(9, 1, 0, 'pdoResources', '', 0, 2, 0, '/* @var array $scriptProperties */\nif (isset($parents) && $parents === '''') {\n	$scriptProperties[''parents''] = $modx->resource->id;\n}\nif (!empty($returnIds)) {\n	$scriptProperties[''return''] = ''ids'';\n}\n\n// Adding extra parameters into special place so we can put them in results\n/** @var modSnippet $snippet */\n$additionalPlaceholders = array();\nif ($snippet = $modx->getObject(''modSnippet'', array(''name'' => ''pdoResources''))) {\n	$properties = $snippet->get(''properties'');\n	foreach ($scriptProperties as $k => $v) {\n		if (!isset($properties[$k])) {\n			$additionalPlaceholders[$k] = $v;\n		}\n	}\n}\n$scriptProperties[''additionalPlaceholders''] = $additionalPlaceholders;\n\n/* @var pdoFetch $pdoFetch */\n$fqn = $modx->getOption(''pdoFetch.class'', null, ''pdotools.pdofetch'', true);\nif ($pdoClass = $modx->loadClass($fqn, '''', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelseif ($pdoClass = $modx->loadClass($fqn, MODX_CORE_PATH . ''components/pdotools/model/'', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelse {\n	$modx->log(modX::LOG_LEVEL_ERROR, ''Could not load pdoFetch from "MODX_CORE_PATH/components/pdotools/model/".'');\n	return false;\n}\n$pdoFetch->addTime(''pdoTools loaded'');\n$output = $pdoFetch->run();\n\n$log = '''';\nif ($modx->user->hasSessionContext(''mgr'') && !empty($showLog)) {\n	$log .= ''<pre class="pdoResourcesLog">'' . print_r($pdoFetch->getTime(), 1) . ''</pre>'';\n}\n\n// Return output\nif (!empty($returnIds)) {\n	$modx->setPlaceholder(''pdoResources.log'', $log);\n	if (!empty($toPlaceholder)) {\n		$modx->setPlaceholder($toPlaceholder, $output);\n	}\n	else {\n		return $output;\n	}\n}\nelseif (!empty($toSeparatePlaceholders)) {\n	$output[''log''] = $log;\n	$modx->setPlaceholders($output, $toSeparatePlaceholders);\n}\nelse {\n	$output .= $log;\n\n	if (!empty($tplWrapper) && (!empty($wrapIfEmpty) || !empty($output))) {\n		$output = $pdoFetch->getChunk($tplWrapper, array(''output'' => $output), $pdoFetch->config[''fastMode'']);\n	}\n\n	if (!empty($toPlaceholder)) {\n		$modx->setPlaceholder($toPlaceholder, $output);\n	}\n	else {\n		return $output;\n	}\n}', 0, 'a:47:{s:3:"tpl";a:7:{s:4:"name";s:3:"tpl";s:4:"desc";s:17:"pdotools_prop_tpl";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"returnIds";a:7:{s:4:"name";s:9:"returnIds";s:4:"desc";s:23:"pdotools_prop_returnIds";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"showLog";a:7:{s:4:"name";s:7:"showLog";s:4:"desc";s:21:"pdotools_prop_showLog";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"fastMode";a:7:{s:4:"name";s:8:"fastMode";s:4:"desc";s:22:"pdotools_prop_fastMode";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"sortby";a:7:{s:4:"name";s:6:"sortby";s:4:"desc";s:20:"pdotools_prop_sortby";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:11:"publishedon";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"sortbyTV";a:7:{s:4:"name";s:8:"sortbyTV";s:4:"desc";s:22:"pdotools_prop_sortbyTV";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"sortbyTVType";a:7:{s:4:"name";s:12:"sortbyTVType";s:4:"desc";s:26:"pdotools_prop_sortbyTVType";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"sortdir";a:7:{s:4:"name";s:7:"sortdir";s:4:"desc";s:21:"pdotools_prop_sortdir";s:4:"type";s:4:"list";s:7:"options";a:2:{i:0;a:2:{s:4:"text";s:3:"ASC";s:5:"value";s:3:"ASC";}i:1;a:2:{s:4:"text";s:4:"DESC";s:5:"value";s:4:"DESC";}}s:5:"value";s:4:"DESC";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"sortdirTV";a:7:{s:4:"name";s:9:"sortdirTV";s:4:"desc";s:23:"pdotools_prop_sortdirTV";s:4:"type";s:4:"list";s:7:"options";a:2:{i:0;a:2:{s:4:"text";s:3:"ASC";s:5:"value";s:3:"ASC";}i:1;a:2:{s:4:"text";s:4:"DESC";s:5:"value";s:4:"DESC";}}s:5:"value";s:3:"ASC";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"limit";a:7:{s:4:"name";s:5:"limit";s:4:"desc";s:19:"pdotools_prop_limit";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:10;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"offset";a:7:{s:4:"name";s:6:"offset";s:4:"desc";s:20:"pdotools_prop_offset";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"depth";a:7:{s:4:"name";s:5:"depth";s:4:"desc";s:19:"pdotools_prop_depth";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:10;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"outputSeparator";a:7:{s:4:"name";s:15:"outputSeparator";s:4:"desc";s:29:"pdotools_prop_outputSeparator";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:"\n";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"toPlaceholder";a:7:{s:4:"name";s:13:"toPlaceholder";s:4:"desc";s:27:"pdotools_prop_toPlaceholder";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"parents";a:7:{s:4:"name";s:7:"parents";s:4:"desc";s:21:"pdotools_prop_parents";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:14:"includeContent";a:7:{s:4:"name";s:14:"includeContent";s:4:"desc";s:28:"pdotools_prop_includeContent";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"includeTVs";a:7:{s:4:"name";s:10:"includeTVs";s:4:"desc";s:24:"pdotools_prop_includeTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"prepareTVs";a:7:{s:4:"name";s:10:"prepareTVs";s:4:"desc";s:24:"pdotools_prop_prepareTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:"1";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"processTVs";a:7:{s:4:"name";s:10:"processTVs";s:4:"desc";s:24:"pdotools_prop_processTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"tvPrefix";a:7:{s:4:"name";s:8:"tvPrefix";s:4:"desc";s:22:"pdotools_prop_tvPrefix";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:3:"tv.";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"tvFilters";a:7:{s:4:"name";s:9:"tvFilters";s:4:"desc";s:23:"pdotools_prop_tvFilters";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:21:"tvFiltersAndDelimiter";a:7:{s:4:"name";s:21:"tvFiltersAndDelimiter";s:4:"desc";s:35:"pdotools_prop_tvFiltersAndDelimiter";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:",";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:20:"tvFiltersOrDelimiter";a:7:{s:4:"name";s:20:"tvFiltersOrDelimiter";s:4:"desc";s:34:"pdotools_prop_tvFiltersOrDelimiter";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:2:"||";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"where";a:7:{s:4:"name";s:5:"where";s:4:"desc";s:19:"pdotools_prop_where";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"showUnpublished";a:7:{s:4:"name";s:15:"showUnpublished";s:4:"desc";s:29:"pdotools_prop_showUnpublished";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"showDeleted";a:7:{s:4:"name";s:11:"showDeleted";s:4:"desc";s:25:"pdotools_prop_showDeleted";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"showHidden";a:7:{s:4:"name";s:10:"showHidden";s:4:"desc";s:24:"pdotools_prop_showHidden";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:14:"hideContainers";a:7:{s:4:"name";s:14:"hideContainers";s:4:"desc";s:28:"pdotools_prop_hideContainers";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"context";a:7:{s:4:"name";s:7:"context";s:4:"desc";s:21:"pdotools_prop_context";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:3:"idx";a:7:{s:4:"name";s:3:"idx";s:4:"desc";s:17:"pdotools_prop_idx";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"first";a:7:{s:4:"name";s:5:"first";s:4:"desc";s:19:"pdotools_prop_first";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:4:"last";a:7:{s:4:"name";s:4:"last";s:4:"desc";s:18:"pdotools_prop_last";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"tplFirst";a:7:{s:4:"name";s:8:"tplFirst";s:4:"desc";s:22:"pdotools_prop_tplFirst";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"tplLast";a:7:{s:4:"name";s:7:"tplLast";s:4:"desc";s:21:"pdotools_prop_tplLast";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"tplOdd";a:7:{s:4:"name";s:6:"tplOdd";s:4:"desc";s:20:"pdotools_prop_tplOdd";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"tplWrapper";a:7:{s:4:"name";s:10:"tplWrapper";s:4:"desc";s:24:"pdotools_prop_tplWrapper";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"wrapIfEmpty";a:7:{s:4:"name";s:11:"wrapIfEmpty";s:4:"desc";s:25:"pdotools_prop_wrapIfEmpty";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"totalVar";a:7:{s:4:"name";s:8:"totalVar";s:4:"desc";s:22:"pdotools_prop_totalVar";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:5:"total";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"resources";a:7:{s:4:"name";s:9:"resources";s:4:"desc";s:23:"pdotools_prop_resources";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"tplCondition";a:7:{s:4:"name";s:12:"tplCondition";s:4:"desc";s:26:"pdotools_prop_tplCondition";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"tplOperator";a:7:{s:4:"name";s:11:"tplOperator";s:4:"desc";s:25:"pdotools_prop_tplOperator";s:4:"type";s:4:"list";s:7:"options";a:10:{i:0;a:2:{s:4:"text";s:11:"is equal to";s:5:"value";s:2:"==";}i:1;a:2:{s:4:"text";s:15:"is not equal to";s:5:"value";s:2:"!=";}i:2;a:2:{s:4:"text";s:9:"less than";s:5:"value";s:1:"<";}i:3;a:2:{s:4:"text";s:21:"less than or equal to";s:5:"value";s:2:"<=";}i:4;a:2:{s:4:"text";s:24:"greater than or equal to";s:5:"value";s:2:">=";}i:5;a:2:{s:4:"text";s:8:"is empty";s:5:"value";s:5:"empty";}i:6;a:2:{s:4:"text";s:12:"is not empty";s:5:"value";s:6:"!empty";}i:7;a:2:{s:4:"text";s:7:"is null";s:5:"value";s:4:"null";}i:8;a:2:{s:4:"text";s:11:"is in array";s:5:"value";s:7:"inarray";}i:9;a:2:{s:4:"text";s:10:"is between";s:5:"value";s:7:"between";}}s:5:"value";s:2:"==";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"conditionalTpls";a:7:{s:4:"name";s:15:"conditionalTpls";s:4:"desc";s:29:"pdotools_prop_conditionalTpls";s:4:"type";s:8:"textarea";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"select";a:7:{s:4:"name";s:6:"select";s:4:"desc";s:20:"pdotools_prop_select";s:4:"type";s:8:"textarea";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:22:"toSeparatePlaceholders";a:7:{s:4:"name";s:22:"toSeparatePlaceholders";s:4:"desc";s:36:"pdotools_prop_toSeparatePlaceholders";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"loadModels";a:7:{s:4:"name";s:10:"loadModels";s:4:"desc";s:24:"pdotools_prop_loadModels";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"scheme";a:7:{s:4:"name";s:6:"scheme";s:4:"desc";s:20:"pdotools_prop_scheme";s:4:"type";s:4:"list";s:7:"options";a:5:{i:0;a:2:{s:5:"value";i:-1;s:4:"text";s:25:"-1 (relative to site_url)";}i:1;a:2:{s:5:"value";s:4:"full";s:4:"text";s:40:"full (absolute, prepended with site_url)";}i:2;a:2:{s:5:"value";s:3:"abs";s:4:"text";s:39:"abs (absolute, prepended with base_url)";}i:3;a:2:{s:5:"value";s:4:"http";s:4:"text";s:38:"http (absolute, forced to http scheme)";}i:4;a:2:{s:5:"value";s:5:"https";s:4:"text";s:40:"https (absolute, forced to https scheme)";}}s:5:"value";i:-1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"useWeblinkUrl";a:7:{s:4:"name";s:13:"useWeblinkUrl";s:4:"desc";s:27:"pdotools_prop_useWeblinkUrl";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/pdotools/elements/snippets/snippet.pdoresources.php'),
(10, 1, 0, 'pdoUsers', '', 0, 2, 0, '/* @var array $scriptProperties */\n/* @var pdoFetch $pdoFetch */\n$fqn = $modx->getOption(''pdoFetch.class'', null, ''pdotools.pdofetch'', true);\nif ($pdoClass = $modx->loadClass($fqn, '''', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelseif ($pdoClass = $modx->loadClass($fqn, MODX_CORE_PATH . ''components/pdotools/model/'', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelse {\n	$modx->log(modX::LOG_LEVEL_ERROR, ''Could not load pdoFetch from "MODX_CORE_PATH/components/pdotools/model/".'');\n	return false;\n}\n$pdoFetch->addTime(''pdoTools loaded'');\n\n$class = ''modUser'';\n$profile = ''modUserProfile'';\n$member = ''modUserGroupMember'';\n\n// Start building "Where" expression\n$where = array();\nif (empty($showInactive)) {$where[$class.''.active''] = 1;}\nif (empty($showBlocked)) {$where[$profile.''.blocked''] = 0;}\n\n// Add users profiles and groups\n$innerJoin = array(\n	$profile => array(''alias'' => $profile, ''on'' => "$class.id = $profile.internalKey"),\n);\n\n// Filter by users, groups and roles\n$tmp = array(\n	''users'' => array(\n		''class'' => $class,\n		''name'' => ''username'',\n		''join'' => $class.''.id'',\n	),\n	''groups'' => array(\n		''class'' => ''modUserGroup'',\n		''name'' => ''name'',\n		''join'' => $member.''.user_group'',\n	),\n	''roles'' => array(\n		''class'' => ''modUserGroupRole'',\n		''name'' => ''name'',\n		''join'' => $member.''.role'',\n	)\n);\nforeach ($tmp as $k => $p) {\n	if (!empty($$k)) {\n		$$k = array_map(''trim'', explode('','', $$k));\n		${$k.''_in''} = ${$k.''_out''} = $fetch_in = $fetch_out = array();\n		foreach ($$k as $v) {\n			if (is_numeric($v)) {\n				if ($v[0] == ''-'') {${$k.''_out''}[] = abs($v);}\n				else {${$k.''_in''}[] = abs($v);}\n			}\n			else {\n				if ($v[0] == ''-'') {$fetch_out[] = $v;}\n				else {$fetch_in[] = $v;}\n			}\n		}\n\n		if (!empty($fetch_in) || !empty($fetch_out)) {\n			$q = $modx->newQuery($p[''class''], array($p[''name''].'':IN'' => array_merge($fetch_in, $fetch_out)));\n			$q->select(''id,''.$p[''name'']);\n			$tstart = microtime(true);\n			if ($q->prepare() && $q->stmt->execute()) {\n				$modx->queryTime += microtime(true) - $tstart;\n				$modx->executedQueries++;\n				while ($row = $q->stmt->fetch(PDO::FETCH_ASSOC)) {\n					if (in_array($row[$p[''name'']], $fetch_in)) {\n						${$k.''_in''}[] = $row[''id''];\n					}\n					else {\n						${$k.''_out''}[] = $row[''id''];\n					}\n				}\n			}\n		}\n\n		if (!empty(${$k.''_in''})) {\n			$where[$p[''join''].'':IN''] = ${$k.''_in''};\n		}\n		if (!empty(${$k.''_out''})) {\n			$where[$p[''join''].'':NOT IN''] = ${$k.''_out''};\n		}\n	}\n}\n\nif (!empty($groups_in) || !empty($groups_out) || !empty($roles_in) || !empty($roles_out)) {\n	$innerJoin[$member] = array(''alias'' => $member, ''on'' => "$class.id = $member.member");\n}\n\n// Fields to select\n$select = array(\n	$class => implode('','', array_keys($modx->getFieldMeta($class)))\n	,$profile => implode('','', array_keys($modx->getFieldMeta($profile)))\n);\n\n// Add custom parameters\nforeach (array(''where'',''innerJoin'',''select'') as $v) {\n	if (!empty($scriptProperties[$v])) {\n		$tmp = $modx->fromJSON($scriptProperties[$v]);\n		if (is_array($tmp)) {\n			$$v = array_merge($$v, $tmp);\n		}\n	}\n	unset($scriptProperties[$v]);\n}\n$pdoFetch->addTime(''Conditions prepared'');\n\n$default = array(\n	''class'' => $class,\n	''innerJoin'' => $modx->toJSON($innerJoin),\n	''where'' => $modx->toJSON($where),\n	''select'' => $modx->toJSON($select),\n	''groupby'' => $class.''.id'',\n	''sortby'' => $class.''.id'',\n	''sortdir'' => ''ASC'',\n	''fastMode'' => false,\n	''return'' => !empty($returnIds) ? ''ids'' : ''chunks'',\n	''disableConditions'' => true\n);\n\nif (!empty($users_in) && (empty($scriptProperties[''sortby'']) || $scriptProperties[''sortby''] == $class.''.id'')) {\n	$scriptProperties[''sortby''] = "find_in_set(`$class`.`id`,''".implode('','', $users_in)."'')";\n	$scriptProperties[''sortdir''] = '''';\n}\n\n// Merge all properties and run!\n$pdoFetch->addTime(''Query parameters ready'');\n$pdoFetch->setConfig(array_merge($default, $scriptProperties), false);\n$output = $pdoFetch->run();\n\n$log = '''';\nif ($modx->user->hasSessionContext(''mgr'') && !empty($showLog)) {\n	$log .= ''<pre class="pdoUsersLog">'' . print_r($pdoFetch->getTime(), 1) . ''</pre>'';\n}\n\n// Return output\nif (!empty($returnIds)) {\n	$modx->setPlaceholder(''pdoUsers.log'', $log);\n	return $output;\n}\nelseif (!empty($toSeparatePlaceholders)) {\n	$output[''log''] = $log;\n	$modx->setPlaceholders($output, $toSeparatePlaceholders);\n}\nelse {\n	$output .= $log;\n\n	if (!empty($tplWrapper) && (!empty($wrapIfEmpty) || !empty($output))) {\n		$output = $pdoFetch->getChunk($tplWrapper, array(''output'' => $output), $pdoFetch->config[''fastMode'']);\n	}\n\n	if (!empty($toPlaceholder)) {\n		$modx->setPlaceholder($toPlaceholder, $output);\n	}\n	else {\n		return $output;\n	}\n}', 0, 'a:30:{s:3:"tpl";a:7:{s:4:"name";s:3:"tpl";s:4:"desc";s:17:"pdotools_prop_tpl";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"returnIds";a:7:{s:4:"name";s:9:"returnIds";s:4:"desc";s:23:"pdotools_prop_returnIds";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"showLog";a:7:{s:4:"name";s:7:"showLog";s:4:"desc";s:21:"pdotools_prop_showLog";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"fastMode";a:7:{s:4:"name";s:8:"fastMode";s:4:"desc";s:22:"pdotools_prop_fastMode";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"sortby";a:7:{s:4:"name";s:6:"sortby";s:4:"desc";s:20:"pdotools_prop_sortby";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:10:"modUser.id";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"sortdir";a:7:{s:4:"name";s:7:"sortdir";s:4:"desc";s:21:"pdotools_prop_sortdir";s:4:"type";s:4:"list";s:7:"options";a:2:{i:0;a:2:{s:4:"text";s:3:"ASC";s:5:"value";s:3:"ASC";}i:1;a:2:{s:4:"text";s:4:"DESC";s:5:"value";s:4:"DESC";}}s:5:"value";s:3:"ASC";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"limit";a:7:{s:4:"name";s:5:"limit";s:4:"desc";s:19:"pdotools_prop_limit";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:10;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"offset";a:7:{s:4:"name";s:6:"offset";s:4:"desc";s:20:"pdotools_prop_offset";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"outputSeparator";a:7:{s:4:"name";s:15:"outputSeparator";s:4:"desc";s:29:"pdotools_prop_outputSeparator";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:"\n";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"toPlaceholder";a:7:{s:4:"name";s:13:"toPlaceholder";s:4:"desc";s:27:"pdotools_prop_toPlaceholder";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"groups";a:7:{s:4:"name";s:6:"groups";s:4:"desc";s:20:"pdotools_prop_groups";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"roles";a:7:{s:4:"name";s:5:"roles";s:4:"desc";s:19:"pdotools_prop_roles";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"users";a:7:{s:4:"name";s:5:"users";s:4:"desc";s:19:"pdotools_prop_users";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"where";a:7:{s:4:"name";s:5:"where";s:4:"desc";s:19:"pdotools_prop_where";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"showInactive";a:7:{s:4:"name";s:12:"showInactive";s:4:"desc";s:26:"pdotools_prop_showInactive";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"showBlocked";a:7:{s:4:"name";s:11:"showBlocked";s:4:"desc";s:25:"pdotools_prop_showBlocked";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:3:"idx";a:7:{s:4:"name";s:3:"idx";s:4:"desc";s:17:"pdotools_prop_idx";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"first";a:7:{s:4:"name";s:5:"first";s:4:"desc";s:19:"pdotools_prop_first";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:4:"last";a:7:{s:4:"name";s:4:"last";s:4:"desc";s:18:"pdotools_prop_last";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"tplFirst";a:7:{s:4:"name";s:8:"tplFirst";s:4:"desc";s:22:"pdotools_prop_tplFirst";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"tplLast";a:7:{s:4:"name";s:7:"tplLast";s:4:"desc";s:21:"pdotools_prop_tplLast";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"tplOdd";a:7:{s:4:"name";s:6:"tplOdd";s:4:"desc";s:20:"pdotools_prop_tplOdd";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"tplWrapper";a:7:{s:4:"name";s:10:"tplWrapper";s:4:"desc";s:24:"pdotools_prop_tplWrapper";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"wrapIfEmpty";a:7:{s:4:"name";s:11:"wrapIfEmpty";s:4:"desc";s:25:"pdotools_prop_wrapIfEmpty";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"totalVar";a:7:{s:4:"name";s:8:"totalVar";s:4:"desc";s:22:"pdotools_prop_totalVar";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:5:"total";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"tplCondition";a:7:{s:4:"name";s:12:"tplCondition";s:4:"desc";s:26:"pdotools_prop_tplCondition";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"tplOperator";a:7:{s:4:"name";s:11:"tplOperator";s:4:"desc";s:25:"pdotools_prop_tplOperator";s:4:"type";s:4:"list";s:7:"options";a:10:{i:0;a:2:{s:4:"text";s:11:"is equal to";s:5:"value";s:2:"==";}i:1;a:2:{s:4:"text";s:15:"is not equal to";s:5:"value";s:2:"!=";}i:2;a:2:{s:4:"text";s:9:"less than";s:5:"value";s:1:"<";}i:3;a:2:{s:4:"text";s:21:"less than or equal to";s:5:"value";s:2:"<=";}i:4;a:2:{s:4:"text";s:24:"greater than or equal to";s:5:"value";s:2:">=";}i:5;a:2:{s:4:"text";s:8:"is empty";s:5:"value";s:5:"empty";}i:6;a:2:{s:4:"text";s:12:"is not empty";s:5:"value";s:6:"!empty";}i:7;a:2:{s:4:"text";s:7:"is null";s:5:"value";s:4:"null";}i:8;a:2:{s:4:"text";s:11:"is in array";s:5:"value";s:7:"inarray";}i:9;a:2:{s:4:"text";s:10:"is between";s:5:"value";s:7:"between";}}s:5:"value";s:2:"==";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"conditionalTpls";a:7:{s:4:"name";s:15:"conditionalTpls";s:4:"desc";s:29:"pdotools_prop_conditionalTpls";s:4:"type";s:8:"textarea";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"select";a:7:{s:4:"name";s:6:"select";s:4:"desc";s:20:"pdotools_prop_select";s:4:"type";s:8:"textarea";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:22:"toSeparatePlaceholders";a:7:{s:4:"name";s:22:"toSeparatePlaceholders";s:4:"desc";s:36:"pdotools_prop_toSeparatePlaceholders";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/pdotools/elements/snippets/snippet.pdousers.php'),
(11, 1, 0, 'pdoCrumbs', '', 0, 2, 0, '/* @var array $scriptProperties */\n/* @var pdoFetch $pdoFetch */\n$fqn = $modx->getOption(''pdoFetch.class'', null, ''pdotools.pdofetch'', true);\nif ($pdoClass = $modx->loadClass($fqn, '''', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelseif ($pdoClass = $modx->loadClass($fqn, MODX_CORE_PATH . ''components/pdotools/model/'', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelse {\n	$modx->log(modX::LOG_LEVEL_ERROR, ''Could not load pdoFetch from "MODX_CORE_PATH/components/pdotools/model/".'');\n	return false;\n}\n$pdoFetch->addTime(''pdoTools loaded'');\n\nif (!isset($from) || $from == '''') {$from = 0;}\nif (empty($to)) {$to = $modx->resource->id;}\nif (empty($scheme)) {$scheme = $modx->getOption(''link_tag_scheme'');}\nif (empty($direction)) {$direction = ''ltr'';}\nif ($outputSeparator == ''&nbsp;&rarr;&nbsp;'' && $direction == ''rtl'') {$outputSeparator = ''&nbsp;&larr;&nbsp;'';}\nif ($limit == '''') {$limit = 10;}\nif (isset($scheme) && is_numeric($scheme)) {$scheme = (integer) $scheme;}\n// For compatibility with BreadCrumb\nif (!empty($maxCrumbs)) {$limit = $maxCrumbs;}\nif (!empty($containerTpl)) {$tplWrapper = $containerTpl;}\nif (!empty($currentCrumbTpl)) {$tplCurrent = $currentCrumbTpl;}\nif (!empty($linkCrumbTpl)) {$scriptProperties[''tpl''] = $linkCrumbTpl;}\nif (!empty($maxCrumbTpl)) {$tplMax = $maxCrumbTpl;}\nif (isset($showBreadCrumbsAtHome)) {$showAtHome = $showBreadCrumbsAtHome;}\nif (isset($showHomeCrumb)) {$showHome = $showHomeCrumb;}\nif (isset($showCurrentCrumb)) {$showCurrent = $showCurrentCrumb;}\n// --\n$fastMode = !empty($fastMode);\n$siteStart = $modx->getOption(''siteStart'', $scriptProperties, $modx->getOption(''site_start''));\n\nif (empty($showAtHome) && $modx->resource->id == $siteStart) {\n	return '''';\n}\n\n$class = $modx->getOption(''class'', $scriptProperties, ''modResource'');\n// Start building "Where" expression\n$where = array();\nif (empty($showUnpublished) && empty($showUnPub)) {$where[''published''] = 1;}\nif (empty($showHidden)) {$where[''hidemenu''] = 0;}\nif (empty($showDeleted)) {$where[''deleted''] = 0;}\nif (!empty($hideContainers) && empty($showContainer)) {$where[''isfolder''] = 0;}\n\n$resource = ($to == $modx->resource->id)\n	? $modx->resource\n	: $modx->getObject($class, $to);\n\nif (!$resource) {\n	$message = ''Could not build breadcrumbs to resource "''.$to.''"'';\n	return '''';\n}\n\n$parents = $modx->getParentIds($resource->id, $limit, array(''context'' => $resource->get(''context_key'')));\nif (!empty($showHome)) {\n	$parents[] = $siteStart;\n}\n\n$ids = array($resource->id);\nforeach ($parents as $parent) {\n	if (!empty($parent)) {\n		$ids[] = $parent;\n	}\n	if (!empty($from) && $parent == $from) {\n		break;\n	}\n}\n$where[''id:IN''] = $ids;\n\nif (!empty($exclude)) {\n	$where[''id:NOT IN''] = array_map(''trim'', explode('','', $exclude));\n}\n\n// Fields to select\n$resourceColumns = array_keys($modx->getFieldMeta($class));\n$select = array($class => implode('','',$resourceColumns));\n\n// Add custom parameters\nforeach (array(''where'',''select'') as $v) {\n	if (!empty($scriptProperties[$v])) {\n		$tmp = $modx->fromJSON($scriptProperties[$v]);\n		if (is_array($tmp)) {\n			$$v = array_merge($$v, $tmp);\n		}\n	}\n	unset($scriptProperties[$v]);\n}\n$pdoFetch->addTime(''Conditions prepared'');\n\n// Default parameters\n$default = array(\n	''class'' => $class,\n	''where'' => $modx->toJSON($where),\n	''select'' => $modx->toJSON($select),\n	''groupby'' => $class.''.id'',\n	''sortby'' => "find_in_set(`$class`.`id`,''".implode('','', $ids)."'')",\n	''sortdir'' => '''',\n	''return'' => ''data'',\n	''totalVar'' => ''pdocrumbs.total'',\n	''disableConditions'' => true\n);\n\n// Merge all properties and run!\n$pdoFetch->addTime(''Query parameters ready'');\n$pdoFetch->setConfig(array_merge($default, $scriptProperties), false);\n$rows = $pdoFetch->run();\n\n$output = array();\nif (!empty($rows) && is_array($rows)) {\n	if (strtolower($direction) == ''ltr'') {\n		$rows = array_reverse($rows);\n	}\n\n	foreach ($rows as $row) {\n		if (!empty($useWeblinkUrl) && $row[''class_key''] == ''modWebLink'') {\n			$row[''link''] = is_numeric(trim($row[''content''], ''[]~ ''))\n				? $modx->makeUrl(intval(trim($row[''content''], ''[]~ '')), '''', '''', $scheme)\n				: $row[''content''];\n		}\n		else {\n			$row[''link''] = $modx->makeUrl($row[''id''], $row[''context_key''], '''', $scheme);\n		}\n\n		$row = array_merge(\n			$scriptProperties\n			,$row\n			,array(''idx'' => $pdoFetch->idx++)\n		);\n		if (empty($row[''menutitle''])) {$row[''menutitle''] = $row[''pagetitle''];}\n\n		if ($row[''id''] == $resource->id && empty($showCurrent)) {\n			continue;\n		}\n		elseif ($row[''id''] == $resource->id && !empty($tplCurrent)) {\n			$tpl = $tplCurrent;\n		}\n		elseif ($row[''id''] == $siteStart && !empty($tplHome)) {\n			$tpl = $tplHome;\n		}\n		else {\n			$tpl = $pdoFetch->defineChunk($row);\n		}\n		$output[] = empty($tpl)\n			? ''<pre>''.$pdoFetch->getChunk('''', $row).''</pre>''\n			: $pdoFetch->getChunk($tpl, $row, $fastMode);\n	}\n}\n$pdoFetch->addTime(''Chunks processed'');\n\nif (count($output) == 1 && !empty($hideSingle)) {\n	$pdoFetch->addTime(''The only result was hidden, because the parameter "hideSingle" activated'');\n	$output = array();\n}\n\n$log = '''';\nif ($modx->user->hasSessionContext(''mgr'') && !empty($showLog)) {\n	$log .= ''<pre class="pdoCrumbsLog">'' . print_r($pdoFetch->getTime(), 1) . ''</pre>'';\n}\n\nif (!empty($toSeparatePlaceholders)) {\n	$output[''log''] = $log;\n	$modx->setPlaceholders($output, $toSeparatePlaceholders);\n}\nelse {\n	$output = implode($outputSeparator, $output);\n	if ($pdoFetch->idx >= $limit && !empty($tplMax) && !empty($output)) {\n		$output = ($direction == ''ltr'')\n			? $pdoFetch->getChunk($tplMax, array(), $fastMode) . $output\n			: $output . $pdoFetch->getChunk($tplMax, array(), $fastMode);\n	}\n	$output .= $log;\n\n	if (!empty($tplWrapper) && (!empty($wrapIfEmpty) || !empty($output))) {\n		$output = $pdoFetch->getChunk($tplWrapper, array(''output'' => $output, ''crumbs'' => $output), $fastMode);\n	}\n\n	if (!empty($toPlaceholder)) {\n		$modx->setPlaceholder($toPlaceholder, $output);\n	}\n	else {\n		return $output;\n	}\n}', 0, 'a:30:{s:7:"showLog";a:7:{s:4:"name";s:7:"showLog";s:4:"desc";s:21:"pdotools_prop_showLog";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"fastMode";a:7:{s:4:"name";s:8:"fastMode";s:4:"desc";s:22:"pdotools_prop_fastMode";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:4:"from";a:7:{s:4:"name";s:4:"from";s:4:"desc";s:18:"pdotools_prop_from";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:2:"to";a:7:{s:4:"name";s:2:"to";s:4:"desc";s:16:"pdotools_prop_to";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"limit";a:7:{s:4:"name";s:5:"limit";s:4:"desc";s:19:"pdotools_prop_limit";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:10;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"exclude";a:7:{s:4:"name";s:7:"exclude";s:4:"desc";s:21:"pdotools_prop_exclude";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"outputSeparator";a:7:{s:4:"name";s:15:"outputSeparator";s:4:"desc";s:29:"pdotools_prop_outputSeparator";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:18:"&nbsp;&rarr;&nbsp;";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"toPlaceholder";a:7:{s:4:"name";s:13:"toPlaceholder";s:4:"desc";s:27:"pdotools_prop_toPlaceholder";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"includeTVs";a:7:{s:4:"name";s:10:"includeTVs";s:4:"desc";s:24:"pdotools_prop_includeTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"prepareTVs";a:7:{s:4:"name";s:10:"prepareTVs";s:4:"desc";s:24:"pdotools_prop_prepareTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:"1";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"processTVs";a:7:{s:4:"name";s:10:"processTVs";s:4:"desc";s:24:"pdotools_prop_processTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"tvPrefix";a:7:{s:4:"name";s:8:"tvPrefix";s:4:"desc";s:22:"pdotools_prop_tvPrefix";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:3:"tv.";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"where";a:7:{s:4:"name";s:5:"where";s:4:"desc";s:19:"pdotools_prop_where";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"showUnpublished";a:7:{s:4:"name";s:15:"showUnpublished";s:4:"desc";s:29:"pdotools_prop_showUnpublished";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"showDeleted";a:7:{s:4:"name";s:11:"showDeleted";s:4:"desc";s:25:"pdotools_prop_showDeleted";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"showHidden";a:7:{s:4:"name";s:10:"showHidden";s:4:"desc";s:24:"pdotools_prop_showHidden";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:14:"hideContainers";a:7:{s:4:"name";s:14:"hideContainers";s:4:"desc";s:28:"pdotools_prop_hideContainers";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:3:"tpl";a:7:{s:4:"name";s:3:"tpl";s:4:"desc";s:17:"pdotools_prop_tpl";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:46:"@INLINE <a href="[[+link]]">[[+menutitle]]</a>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"tplCurrent";a:7:{s:4:"name";s:10:"tplCurrent";s:4:"desc";s:24:"pdotools_prop_tplCurrent";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:35:"@INLINE <span>[[+menutitle]]</span>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"tplMax";a:7:{s:4:"name";s:6:"tplMax";s:4:"desc";s:20:"pdotools_prop_tplMax";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:36:"@INLINE <span>&nbsp;...&nbsp;</span>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"tplHome";a:7:{s:4:"name";s:7:"tplHome";s:4:"desc";s:21:"pdotools_prop_tplHome";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"tplWrapper";a:7:{s:4:"name";s:10:"tplWrapper";s:4:"desc";s:24:"pdotools_prop_tplWrapper";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:50:"@INLINE <div class="breadcrumbs">[[+output]]</div>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"wrapIfEmpty";a:7:{s:4:"name";s:11:"wrapIfEmpty";s:4:"desc";s:25:"pdotools_prop_wrapIfEmpty";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"showCurrent";a:7:{s:4:"name";s:11:"showCurrent";s:4:"desc";s:25:"pdotools_prop_showCurrent";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"showHome";a:7:{s:4:"name";s:8:"showHome";s:4:"desc";s:22:"pdotools_prop_showHome";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"showAtHome";a:7:{s:4:"name";s:10:"showAtHome";s:4:"desc";s:24:"pdotools_prop_showAtHome";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"hideSingle";a:7:{s:4:"name";s:10:"hideSingle";s:4:"desc";s:24:"pdotools_prop_hideSingle";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"direction";a:7:{s:4:"name";s:9:"direction";s:4:"desc";s:23:"pdotools_prop_direction";s:4:"type";s:4:"list";s:7:"options";a:2:{i:0;a:2:{s:5:"value";s:3:"ltr";s:4:"text";s:19:"Left To Right (ltr)";}i:1;a:2:{s:5:"value";s:3:"rtl";s:4:"text";s:19:"Right To Left (rtl)";}}s:5:"value";s:3:"ltr";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"scheme";a:7:{s:4:"name";s:6:"scheme";s:4:"desc";s:20:"pdotools_prop_scheme";s:4:"type";s:4:"list";s:7:"options";a:5:{i:0;a:2:{s:5:"value";i:-1;s:4:"text";s:25:"-1 (relative to site_url)";}i:1;a:2:{s:5:"value";s:4:"full";s:4:"text";s:40:"full (absolute, prepended with site_url)";}i:2;a:2:{s:5:"value";s:3:"abs";s:4:"text";s:39:"abs (absolute, prepended with base_url)";}i:3;a:2:{s:5:"value";s:4:"http";s:4:"text";s:38:"http (absolute, forced to http scheme)";}i:4;a:2:{s:5:"value";s:5:"https";s:4:"text";s:40:"https (absolute, forced to https scheme)";}}s:5:"value";i:-1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"useWeblinkUrl";a:7:{s:4:"name";s:13:"useWeblinkUrl";s:4:"desc";s:27:"pdotools_prop_useWeblinkUrl";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/pdotools/elements/snippets/snippet.pdocrumbs.php'),
(12, 1, 0, 'pdoField', '', 0, 2, 0, '/* @var array $scriptProperties */\nif (!empty($input)) {$id = $input;}\nif (!isset($default)) {$default = '''';}\nif (!isset($output)) {$output = '''';}\n$class = $modx->getOption(''class'', $scriptProperties, ''modResource'', true);\n$isResource = $class == ''modResource'' || in_array($class, $modx->getDescendants(''modResource''));\n\nif (empty($field)) {$field = ''pagetitle'';}\n$top = isset($top) ? intval($top) : 0;\n$topLevel = isset($topLevel) ? intval($topLevel) : 0;\nif (!empty($options)) {\n	$options = trim($options);\n	if ($options[0] == ''{'') {\n		$tmp = $modx->fromJSON($options);\n		if (is_array($tmp)) {\n			extract($tmp);\n			$scriptProperties = array_merge($scriptProperties, $tmp);\n		}\n	}\n	else {\n		$field = $options;\n	}\n}\nif (empty($id)) {\n	if (!empty($modx->resource)) {\n		$id = $modx->resource->id;\n	}\n	else {\n		return ''You must specify an id of ''.$class;\n	}\n}\nif (!isset($context)) {$context = '''';}\n\n// Gets the parent from root of context, if specified\nif ($isResource && $id && ($top || $topLevel)) {\n	// Select needed context for parents functionality\n	if (empty($context)) {\n		$q = $modx->newQuery($class, $id);\n		$q->select(''context_key'');\n		$tstart = microtime(true);\n		if ($q->prepare() && $q->stmt->execute()) {\n			$modx->queryTime += microtime(true) - $tstart;\n			$modx->executedQueries++;\n			$context = $q->stmt->fetch(PDO::FETCH_COLUMN);\n		}\n	}\n	// Original pdoField logic\n	if (empty($ultimate)) {\n		if ($topLevel) {\n			$pids = $modx->getChildIds(0, $topLevel, array(''context'' => $context));\n			$pid = $id;\n			while (true) {\n				$tmp = $modx->getParentIds($pid, 1, array(''context'' => $context));\n				if (!$pid = current($tmp)) {\n					break;\n				}\n				elseif (in_array($pid, $pids)) {\n					$id = $pid;\n					break;\n				}\n			}\n		}\n		elseif ($top) {\n			$pid = $id;\n			for ($i = 1; $i <= $top; $i++) {\n				$tmp = $modx->getParentIds($pid, 1, array(''context'' => $context));\n				if (!$pid = current($tmp)) {\n					break;\n				}\n				$id = $pid;\n			}\n		}\n	}\n	// UltimateParent logic\n	// https://github.com/splittingred/UltimateParent/blob/develop/core/components/ultimateparent/snippet.ultimateparent.php\n	elseif ($id != $top) {\n		$pid = $id;\n		$pids = $modx->getParentIds($id, 10, array(''context'' => $context));\n		if (!$topLevel || count($pids) >= $topLevel) {\n			while ($parentIds= $modx->getParentIds($id, 1, array(''context'' => $context))) {\n				$pid = array_pop($parentIds);\n				if ($pid == $top) {\n					break;\n				}\n				$id = $pid;\n				$parentIds = $modx->getParentIds($id, 10, array(''context'' => $context));\n				if ($topLevel && count($parentIds) < $topLevel) {\n					break;\n				}\n			}\n		}\n	}\n}\n\n/* @var pdoFetch $pdoFetch */\n$fqn = $modx->getOption(''pdoFetch.class'', null, ''pdotools.pdofetch'', true);\nif ($pdoClass = $modx->loadClass($fqn, '''', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelseif ($pdoClass = $modx->loadClass($fqn, MODX_CORE_PATH . ''components/pdotools/model/'', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelse {\n	$modx->log(modX::LOG_LEVEL_ERROR, ''Could not load pdoFetch from "MODX_CORE_PATH/components/pdotools/model/".'');\n	return false;\n}\n$pdoFetch->addTime(''pdoTools loaded'');\n\n$where = array($class.''.id'' => $id);\n// Add custom parameters\nforeach (array(''where'') as $v) {\n	if (!empty($scriptProperties[$v])) {\n		$tmp = $modx->fromJSON($scriptProperties[$v]);\n		if (is_array($tmp)) {\n			$$v = array_merge($$v, $tmp);\n		}\n	}\n	unset($scriptProperties[$v]);\n}\n$pdoFetch->addTime(''Conditions prepared'');\n\n// Fields to select\n$resourceColumns = array_keys($modx->getFieldMeta($class));\n$field = strtolower($field);\nif (in_array($field, $resourceColumns)) {\n	$scriptProperties[''select''] = array($class => $field);\n	$scriptProperties[''includeTVs''] = '''';\n}\nelseif ($isResource) {\n	$scriptProperties[''select''] = array($class => ''id'');\n	$scriptProperties[''includeTVs''] = $field;\n}\n// Additional default field\nif (!empty($default)) {\n	$default = strtolower($default);\n	if (in_array($default, $resourceColumns)) {\n		$scriptProperties[''select''][$class] .= '',''.$default;\n	}\n	elseif ($isResource) {\n		$scriptProperties[''includeTVs''] = empty($scriptProperties[''includeTVs''])\n			? $default\n			: $scriptProperties[''includeTVs''] . '','' . $default;\n	}\n}\n\n$scriptProperties[''disableConditions''] = true;\nif ($row = $pdoFetch->getObject($class, $where, $scriptProperties)) {\n	foreach ($row as $k => $v) {\n		if (strtolower($k) == $field && $v != '''') {\n			$output = $v;\n			break;\n		}\n	}\n\n	if (empty($output) && !empty($default)) {\n		foreach ($row as $k => $v) {\n			if (strtolower($k) == $default && $v != '''') {\n				$output = $v;\n				break;\n			}\n		}\n	}\n}\n\nif (!empty($toPlaceholder)) {\n	$modx->setPlaceholder($toPlaceholder, $output);\n}\nelse {\n	return $output;\n}', 0, 'a:12:{s:2:"id";a:7:{s:4:"name";s:2:"id";s:4:"desc";s:16:"pdotools_prop_id";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"field";a:7:{s:4:"name";s:5:"field";s:4:"desc";s:19:"pdotools_prop_field";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:9:"pagetitle";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"prepareTVs";a:7:{s:4:"name";s:10:"prepareTVs";s:4:"desc";s:24:"pdotools_prop_prepareTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:"1";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"processTVs";a:7:{s:4:"name";s:10:"processTVs";s:4:"desc";s:24:"pdotools_prop_processTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"where";a:7:{s:4:"name";s:5:"where";s:4:"desc";s:19:"pdotools_prop_where";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"context";a:7:{s:4:"name";s:7:"context";s:4:"desc";s:27:"pdotools_prop_field_context";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:3:"top";a:7:{s:4:"name";s:3:"top";s:4:"desc";s:17:"pdotools_prop_top";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"topLevel";a:7:{s:4:"name";s:8:"topLevel";s:4:"desc";s:22:"pdotools_prop_topLevel";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"default";a:7:{s:4:"name";s:7:"default";s:4:"desc";s:27:"pdotools_prop_field_default";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"output";a:7:{s:4:"name";s:6:"output";s:4:"desc";s:26:"pdotools_prop_field_output";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"toPlaceholder";a:7:{s:4:"name";s:13:"toPlaceholder";s:4:"desc";s:27:"pdotools_prop_toPlaceholder";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"ultimate";a:7:{s:4:"name";s:8:"ultimate";s:4:"desc";s:22:"pdotools_prop_ultimate";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/pdotools/elements/snippets/snippet.pdofield.php');
INSERT INTO `modx_site_snippets` (`id`, `source`, `property_preprocess`, `name`, `description`, `editor_type`, `category`, `cache_type`, `snippet`, `locked`, `properties`, `moduleguid`, `static`, `static_file`) VALUES
(13, 1, 0, 'pdoSitemap', '', 0, 2, 0, '/* @var array $scriptProperties */\n/* @var pdoFetch $pdoFetch */\n$fqn = $modx->getOption(''pdoFetch.class'', null, ''pdotools.pdofetch'', true);\nif ($pdoClass = $modx->loadClass($fqn, '''', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelseif ($pdoClass = $modx->loadClass($fqn, MODX_CORE_PATH . ''components/pdotools/model/'', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelse {\n	$modx->log(modX::LOG_LEVEL_ERROR, ''Could not load pdoFetch from "MODX_CORE_PATH/components/pdotools/model/".'');\n	return false;\n}\n$pdoFetch->addTime(''pdoTools loaded'');\n\n// Default variables\nif (empty($tpl)) {$tpl = "@INLINE \\n<url>\\n\\t<loc>[[+url]]</loc>\\n\\t<lastmod>[[+date]]</lastmod>\\n\\t<changefreq>[[+update]]</changefreq>\\n\\t<priority>[[+priority]]</priority>\\n</url>";}\nif (empty($tplWrapper)) {$tplWrapper = "@INLINE <?xml version=\\"1.0\\" encoding=\\"[[++modx_charset]]\\"\\n<urlset xmlns=\\"[[+schema]]\\">\\n[[+output]]\\n</urlset>";}\nif (empty($sitemapSchema)) {$sitemapSchema = ''http://www.sitemaps.org/schemas/sitemap/0.9'';}\nif (empty($outputSeparator)) {$outputSeparator = "\\n";}\n$scheme = ''full'';\n\n// Convert parameters from GoogleSiteMap if exists\nif (!empty($itemTpl)) {$tpl = $itemTpl;}\nif (!empty($containerTpl)) {$tplWrapper = $containerTpl;}\nif (!empty($allowedtemplates)) {$scriptProperties[''templates''] = $allowedtemplates;}\nif (!empty($maxDepth)) {$scriptProperties[''depth''] = $maxDepth;}\nif (isset($hideDeleted)) {$scriptProperties[''showDeleted''] = !$hideDeleted;}\nif (isset($published)) {$scriptProperties[''showUnpublished''] = !$published;}\nif (isset($searchable)) {$scriptProperties[''showUnsearchable''] = !$searchable;}\nif (!empty($googleSchema)) {$sitemapSchema = $googleSchema;}\nif (!empty($excludeResources)) {\n	$tmp = array_map(''trim'', explode('','', $excludeResources));\n	foreach ($tmp as $v) {\n		if (!empty($scriptProperties[''resources''])) {\n			$scriptProperties[''resources''] .= '',-''.$v;\n		}\n		else {\n			$scriptProperties[''resources''] = ''-''.$v;\n		}\n	}\n}\nif (!empty($excludeChildrenOf)) {\n	$tmp = array_map(''trim'', explode('','', $excludeChildrenOf));\n	foreach ($tmp as $v) {\n		if (!empty($scriptProperties[''parents''])) {\n			$scriptProperties[''parents''] .= '',-''.$v;\n		}\n		else {\n			$scriptProperties[''parents''] = ''-''.$v;\n		}\n	}\n}\nif (!empty($startId)) {\n	if (!empty($scriptProperties[''parents''])) {\n		$scriptProperties[''parents''] .= '',''.$startId;\n	}\n	else {\n		$scriptProperties[''parents''] = $startId;\n	}\n}\nif (!empty($sortBy)) {$scriptProperties[''sortby''] = $sortBy;}\nif (!empty($sortDir)) {$scriptProperties[''sortdir''] = $sortDir;}\nif (!empty($priorityTV)) {\n	if (!empty($scriptProperties[''includeTVs''])) {\n		$scriptProperties[''includeTVs''] .= '',''.$priorityTV;\n	}\n	else {\n		$scriptProperties[''includeTVs''] = $priorityTV;\n	}\n}\nif (!empty($itemSeparator)) {$outputSeparator = $itemSeparator;}\n//---\n\n\n$class = ''modResource'';\n$where = array();\nif (empty($showHidden)) {\n	$where[] = array(\n		$class.''.hidemenu'' => 0,\n		''OR:''.$class.''.class_key:IN'' => array(''Ticket'',''Article'')\n	);\n}\nif (empty($context)) {\n	$scriptProperties[''context''] = $modx->context->key;\n}\n\n$select = array($class => ''id,editedon,createdon,context_key,class_key'');\nif (!empty($useWeblinkUrl)) {$select[$class] .= '',content'';}\n// Add custom parameters\nforeach (array(''where'',''select'') as $v) {\n	if (!empty($scriptProperties[$v])) {\n		$tmp = $modx->fromJSON($scriptProperties[$v]);\n		if (is_array($tmp)) {\n			$$v = array_merge($$v, $tmp);\n		}\n	}\n	unset($scriptProperties[$v]);\n}\n$pdoFetch->addTime(''Conditions prepared'');\n\n// Default parameters\n$default = array(\n	''class'' => $class,\n	''where'' => $modx->toJSON($where),\n	''select'' => $modx->toJSON($select),\n	''sortby'' => $class.''.menuindex'',\n	''sortdir'' => ''ASC'',\n	''return'' => ''data'',\n	''limit'' => 0,\n	//''checkPermissions'' => ''load'',\n	''fastMode'' => true\n);\n\n// Merge all properties and run!\n$pdoFetch->addTime(''Query parameters ready'');\n$pdoFetch->setConfig(array_merge($default, $scriptProperties), false);\n$rows = $pdoFetch->run();\n\n$now = time();\n$output = array();\nforeach ($rows as $row) {\n	if (!empty($useWeblinkUrl) && $row[''class_key''] == ''modWebLink'') {\n		$row[''url''] = is_numeric(trim($row[''content''], ''[]~ ''))\n			? $modx->makeUrl(intval(trim($row[''content''], ''[]~ '')), '''', '''', $scheme)\n			: $row[''content''];\n	}\n	else {\n		$row[''url''] = $modx->makeUrl($row[''id''], $row[''context_key''], '''', $scheme);\n	}\n\n	$time = !empty($row[''editedon''])\n		? $row[''editedon'']\n		: $row[''createdon''];\n	$row[''date''] = date(''Y-m-d'', $time);\n\n	$datediff = floor(($now - $time) / 86400);\n	if ($datediff <= 1) {\n		$row[''priority''] = ''1.0'';\n		$row[''update''] = ''daily'';\n	} elseif (($datediff > 1) && ($datediff <= 7)) {\n		$row[''priority''] = ''0.75'';\n		$row[''update''] = ''weekly'';\n	} elseif (($datediff > 7) && ($datediff <= 30)) {\n		$row[''priority''] = ''0.50'';\n		$row[''update''] = ''weekly'';\n	} else {\n		$row[''priority''] = ''0.25'';\n		$row[''update''] = ''monthly'';\n	}\n\n	if (!empty($priorityTV) && !empty($row[$priorityTV])) {\n		$row[''priority''] = $row[$priorityTV];\n	}\n	/* add item to output */\n	$output[] = preg_replace(''/\\[\\[.*?\\]\\]/'', '''', $pdoFetch->parseChunk($tpl, $row));\n}\n$pdoFetch->addTime(''Rows processed'');\n\n$output = implode($outputSeparator, $output);\n$output = $pdoFetch->getChunk($tplWrapper, array(\n	''schema'' => $sitemapSchema,\n	''output'' => $output,\n	''items'' => $output\n));\n$pdoFetch->addTime(''Rows wrapped'');\n\nif ($modx->user->hasSessionContext(''mgr'') && !empty($showLog)) {\n	$output .= ''<pre class="pdoSitemapLog">'' . print_r($pdoFetch->getTime(), 1) . ''</pre>'';\n}\n\nif (!empty($forceXML)) {\n	header("Content-Type:text/xml");\n	echo $output;\n	@session_write_close();\n	exit();\n}\nelse {\n	return $output;\n}', 0, 'a:21:{s:3:"tpl";a:7:{s:4:"name";s:3:"tpl";s:4:"desc";s:17:"pdotools_prop_tpl";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:145:"@INLINE <url>\n	<loc>[[+url]]</loc>\n	<lastmod>[[+date]]</lastmod>\n	<changefreq>[[+update]]</changefreq>\n	<priority>[[+priority]]</priority>\n</url>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"tplWrapper";a:7:{s:4:"name";s:10:"tplWrapper";s:4:"desc";s:24:"pdotools_prop_tplWrapper";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:110:"@INLINE <?xml version="1.0" encoding="[[++modx_charset]]"?>\n<urlset xmlns="[[+schema]]">\n[[+output]]\n</urlset>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"templates";a:7:{s:4:"name";s:9:"templates";s:4:"desc";s:23:"pdotools_prop_templates";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"context";a:7:{s:4:"name";s:7:"context";s:4:"desc";s:21:"pdotools_prop_context";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"depth";a:7:{s:4:"name";s:5:"depth";s:4:"desc";s:19:"pdotools_prop_depth";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:10;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"showDeleted";a:7:{s:4:"name";s:11:"showDeleted";s:4:"desc";s:25:"pdotools_prop_showDeleted";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"showHidden";a:7:{s:4:"name";s:10:"showHidden";s:4:"desc";s:24:"pdotools_prop_showHidden";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"sitemapSchema";a:7:{s:4:"name";s:13:"sitemapSchema";s:4:"desc";s:27:"pdotools_prop_sitemapSchema";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:43:"http://www.sitemaps.org/schemas/sitemap/0.9";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"showUnpublished";a:7:{s:4:"name";s:15:"showUnpublished";s:4:"desc";s:29:"pdotools_prop_showUnpublished";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:16:"hideUnsearchable";a:7:{s:4:"name";s:16:"hideUnsearchable";s:4:"desc";s:30:"pdotools_prop_hideUnsearchable";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"resources";a:7:{s:4:"name";s:9:"resources";s:4:"desc";s:23:"pdotools_prop_resources";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"parents";a:7:{s:4:"name";s:7:"parents";s:4:"desc";s:21:"pdotools_prop_parents";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"sortby";a:7:{s:4:"name";s:6:"sortby";s:4:"desc";s:20:"pdotools_prop_sortby";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:9:"menuindex";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"sortdir";a:7:{s:4:"name";s:7:"sortdir";s:4:"desc";s:21:"pdotools_prop_sortdir";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:3:"asc";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"where";a:7:{s:4:"name";s:5:"where";s:4:"desc";s:19:"pdotools_prop_where";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"includeTVs";a:7:{s:4:"name";s:10:"includeTVs";s:4:"desc";s:24:"pdotools_prop_includeTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"prepareTVs";a:7:{s:4:"name";s:10:"prepareTVs";s:4:"desc";s:24:"pdotools_prop_prepareTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:"1";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"processTVs";a:7:{s:4:"name";s:10:"processTVs";s:4:"desc";s:24:"pdotools_prop_processTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"outputSeparator";a:7:{s:4:"name";s:15:"outputSeparator";s:4:"desc";s:29:"pdotools_prop_outputSeparator";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:"\n";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"forceXML";a:7:{s:4:"name";s:8:"forceXML";s:4:"desc";s:22:"pdotools_prop_forceXML";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"useWeblinkUrl";a:7:{s:4:"name";s:13:"useWeblinkUrl";s:4:"desc";s:27:"pdotools_prop_useWeblinkUrl";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/pdotools/elements/snippets/snippet.pdositemap.php'),
(14, 1, 0, 'pdoNeighbors', '', 0, 2, 0, '/* @var array $scriptProperties */\n/* @var pdoFetch $pdoFetch */\n$fqn = $modx->getOption(''pdoFetch.class'', null, ''pdotools.pdofetch'', true);\nif ($pdoClass = $modx->loadClass($fqn, '''', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelseif ($pdoClass = $modx->loadClass($fqn, MODX_CORE_PATH . ''components/pdotools/model/'', false, true)) {\n	$pdoFetch = new $pdoClass($modx, $scriptProperties);\n}\nelse {\n	$modx->log(modX::LOG_LEVEL_ERROR, ''Could not load pdoFetch from "MODX_CORE_PATH/components/pdotools/model/".'');\n	return false;\n}\n$pdoFetch->addTime(''pdoTools loaded'');\n\nif (empty($id)) {$id = $modx->resource->id;}\nif (empty($limit)) {$limit = 1;}\nif (empty($scheme)) {$scheme = $modx->getOption(''link_tag_scheme'');}\nif (!isset($outputSeparator)) {$outputSeparator = "\\n";}\n$fastMode = !empty($fastMode);\n\n$class = ''modResource'';\n$resource = ($id == $modx->resource->id)\n	? $modx->resource\n	: $modx->getObject($class, $id);\nif (!$resource) {return '''';}\n\n// We need to determine ids of neighbors\n$params = $scriptProperties;\n$params[''select''] = ''id'';\n$params[''limit''] = 0;\n$ids = $pdoFetch->getCollection(''modResource'', array(''parent'' => $resource->parent), $params);\n$found = false;\n$prev = $next = array();\nforeach ($ids as $v) {\n	if ($v[''id''] == $id) {\n		$found = true;\n		continue;\n	}\n	elseif (!$found) {\n		$prev[] = $v[''id''];\n	}\n	else {\n		$next[] = $v[''id''];\n		if (count($next) >= $limit) {\n			break;\n		}\n	}\n}\n$prev = array_splice($prev, $limit * -1);\nif (!empty($loop)) {\n	if (!count($prev)) {\n		$v = end($ids);\n		$prev[] = $v[''id''];\n	}\n	else {\n		if (!count($next)) {\n			$v = reset($ids);\n			$next[] = $v[''id''];\n		}\n	}\n}\n$ids = array_merge($prev, $next, array($resource->parent));\n$pdoFetch->addTime(''Found ids of neighbors: '' . implode('','', $ids));\n\n// Query conditions\n$where = array($class.''.id:IN'' => $ids);\n\n// Fields to select\n$resourceColumns = array_keys($modx->getFieldMeta($class));\nif (empty($includeContent) && empty($useWeblinkUrl)) {\n	$key = array_search(''content'', $resourceColumns);\n	unset($resourceColumns[$key]);\n}\n$select = array($class => implode('','',$resourceColumns));\n\n// Add custom parameters\nforeach (array(''where'',''select'') as $v) {\n	if (!empty($scriptProperties[$v])) {\n		$tmp = $modx->fromJSON($scriptProperties[$v]);\n		if (is_array($tmp)) {\n			$$v = array_merge($$v, $tmp);\n		}\n	}\n	unset($scriptProperties[$v]);\n}\n$pdoFetch->addTime(''Conditions prepared'');\n\n// Default parameters\n$default = array(\n	''class'' => $class,\n	''where'' => $modx->toJSON($where),\n	''select'' => $modx->toJSON($select),\n	//''groupby'' => $class.''.id'',\n	''sortby'' => $class.''.menuindex'',\n	''sortdir'' => ''ASC'',\n	''return'' => ''data'',\n	''limit'' => 0,\n	''totalVar'' => ''pdoneighbors.total'',\n);\n\n// Merge all properties and run!\nunset($scriptProperties[''limit'']);\n$pdoFetch->addTime(''Query parameters ready'');\n$pdoFetch->setConfig(array_merge($default, $scriptProperties), false);\n\n$rows = $pdoFetch->run();\n$prev = array_flip($prev);\n$next = array_flip($next);\n\n$output = array(''prev'' => array(), ''up'' => array(), ''next'' => array());\nforeach ($rows as $row) {\n	if (empty($row[''menutitle''])) {$row[''menutitle''] = $row[''pagetitle''];}\n	if (!empty($useWeblinkUrl) && $row[''class_key''] == ''modWebLink'') {\n		$row[''link''] = is_numeric(trim($row[''content''], ''[]~ ''))\n			? $modx->makeUrl(intval(trim($row[''content''], ''[]~ '')), '''', '''', $scheme)\n			: $row[''content''];\n	}\n	else {\n		$row[''link''] = $modx->makeUrl($row[''id''], $row[''context_key''], '''', $scheme);\n	}\n\n	if (isset($prev[$row[''id'']])) {\n		$output[''prev''][] = !empty($tplPrev)\n			? $pdoFetch->getChunk($tplPrev, $row, $fastMode)\n			: $pdoFetch->getChunk('''', $row);\n	}\n	elseif (isset($next[$row[''id'']])) {\n		$output[''next''][] = !empty($tplNext)\n			? $pdoFetch->getChunk($tplNext, $row, $fastMode)\n			: $pdoFetch->getChunk('''', $row);\n	}\n	else {\n		$output[''up''][] = !empty($tplUp)\n			? $pdoFetch->getChunk($tplUp, $row, $fastMode)\n			: $pdoFetch->getChunk('''', $row);\n	}\n}\n$pdoFetch->addTime(''Chunks processed'');\n\n$log = '''';\nif ($modx->user->hasSessionContext(''mgr'') && !empty($showLog)) {\n	$log .= ''<pre class="pdoNeighborsLog">'' . print_r($pdoFetch->getTime(), 1) . ''</pre>'';\n}\n\nforeach ($output as &$row) {\n	$row = implode($outputSeparator, $row);\n}\n\nif (!empty($toSeparatePlaceholders)) {\n	$output[''log''] = $log;\n	$modx->setPlaceholders($output, $toSeparatePlaceholders);\n}\nelse {\n	$output = !empty($tplWrapper)\n		? $pdoFetch->getChunk($tplWrapper, $output, $fastMode)\n		: $pdoFetch->getChunk('''', $output);\n	$output .= $log;\n\n	if (!empty($toPlaceholder)) {\n		$modx->setPlaceholder($toPlaceholder, $output);\n	}\n	else {\n		return $output;\n	}\n}', 0, 'a:24:{s:2:"id";a:7:{s:4:"name";s:2:"id";s:4:"desc";s:16:"pdotools_prop_id";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"limit";a:7:{s:4:"name";s:5:"limit";s:4:"desc";s:29:"pdotools_prop_neighbors_limit";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"sortby";a:7:{s:4:"name";s:6:"sortby";s:4:"desc";s:20:"pdotools_prop_sortby";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:9:"menuindex";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"sortdir";a:7:{s:4:"name";s:7:"sortdir";s:4:"desc";s:21:"pdotools_prop_sortdir";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:3:"asc";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"tplPrev";a:7:{s:4:"name";s:7:"tplPrev";s:4:"desc";s:21:"pdotools_prop_tplPrev";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:84:"@INLINE <span class="link-prev"><a href="[[+link]]">&larr; [[+menutitle]]</a></span>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"tplUp";a:7:{s:4:"name";s:5:"tplUp";s:4:"desc";s:19:"pdotools_prop_tplUp";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:82:"@INLINE <span class="link-up">&uarr; <a href="[[+link]]">[[+menutitle]]</a></span>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"tplNext";a:7:{s:4:"name";s:7:"tplNext";s:4:"desc";s:21:"pdotools_prop_tplNext";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:84:"@INLINE <span class="link-next"><a href="[[+link]]">[[+menutitle]] &rarr;</a></span>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"tplWrapper";a:7:{s:4:"name";s:10:"tplWrapper";s:4:"desc";s:34:"pdotools_prop_neighbors_tplWrapper";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:62:"@INLINE <div class="neighbors">[[+prev]][[+up]][[+next]]</div>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"showUnpublished";a:7:{s:4:"name";s:15:"showUnpublished";s:4:"desc";s:29:"pdotools_prop_showUnpublished";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"showDeleted";a:7:{s:4:"name";s:11:"showDeleted";s:4:"desc";s:25:"pdotools_prop_showDeleted";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"showHidden";a:7:{s:4:"name";s:10:"showHidden";s:4:"desc";s:24:"pdotools_prop_showHidden";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:14:"hideContainers";a:7:{s:4:"name";s:14:"hideContainers";s:4:"desc";s:28:"pdotools_prop_hideContainers";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:22:"toSeparatePlaceholders";a:7:{s:4:"name";s:22:"toSeparatePlaceholders";s:4:"desc";s:36:"pdotools_prop_toSeparatePlaceholders";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"toPlaceholder";a:7:{s:4:"name";s:13:"toPlaceholder";s:4:"desc";s:27:"pdotools_prop_toPlaceholder";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"outputSeparator";a:7:{s:4:"name";s:15:"outputSeparator";s:4:"desc";s:29:"pdotools_prop_outputSeparator";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:"\n";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"showLog";a:7:{s:4:"name";s:7:"showLog";s:4:"desc";s:21:"pdotools_prop_showLog";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"fastMode";a:7:{s:4:"name";s:8:"fastMode";s:4:"desc";s:22:"pdotools_prop_fastMode";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"includeTVs";a:7:{s:4:"name";s:10:"includeTVs";s:4:"desc";s:24:"pdotools_prop_includeTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"prepareTVs";a:7:{s:4:"name";s:10:"prepareTVs";s:4:"desc";s:24:"pdotools_prop_prepareTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:"1";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"processTVs";a:7:{s:4:"name";s:10:"processTVs";s:4:"desc";s:24:"pdotools_prop_processTVs";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"tvPrefix";a:7:{s:4:"name";s:8:"tvPrefix";s:4:"desc";s:22:"pdotools_prop_tvPrefix";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:3:"tv.";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"scheme";a:7:{s:4:"name";s:6:"scheme";s:4:"desc";s:20:"pdotools_prop_scheme";s:4:"type";s:4:"list";s:7:"options";a:5:{i:0;a:2:{s:5:"value";i:-1;s:4:"text";s:25:"-1 (relative to site_url)";}i:1;a:2:{s:5:"value";s:4:"full";s:4:"text";s:40:"full (absolute, prepended with site_url)";}i:2;a:2:{s:5:"value";s:3:"abs";s:4:"text";s:39:"abs (absolute, prepended with base_url)";}i:3;a:2:{s:5:"value";s:4:"http";s:4:"text";s:38:"http (absolute, forced to http scheme)";}i:4;a:2:{s:5:"value";s:5:"https";s:4:"text";s:40:"https (absolute, forced to https scheme)";}}s:5:"value";i:-1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"useWeblinkUrl";a:7:{s:4:"name";s:13:"useWeblinkUrl";s:4:"desc";s:27:"pdotools_prop_useWeblinkUrl";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:4:"loop";a:7:{s:4:"name";s:4:"loop";s:4:"desc";s:18:"pdotools_prop_loop";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/pdotools/elements/snippets/snippet.pdoneighbors.php'),
(15, 1, 0, 'pdoPage', '', 0, 2, 0, '/** @var array $scriptProperties */\n// Default variables\nif (empty($pageVarKey)) {$pageVarKey = ''page'';}\nif (empty($pageNavVar)) {$pageNavVar = ''page.nav'';}\nif (empty($pageCountVar)) {$pageCountVar = ''pageCount'';}\nif (empty($totalVar)) {$totalVar = ''total'';}\nif (empty($page)) {$page = 1;}\nif (empty($scheme)) {$scheme = -1;} elseif (is_numeric($scheme)) {$scheme = (integer) $scheme;}\nif (empty($pageLimit)) {$pageLimit = 5;} else {$pageLimit = (integer) $pageLimit;}\nif (!isset($plPrefix)) {$plPrefix = '''';}\nif (!empty($scriptProperties[''ajaxMode''])) {$scriptProperties[''ajax''] = 1;}\n\n// Convert parameters from getPage if exists\nif (!empty($namespace)) {$plPrefix = $namespace;}\nif (!empty($pageNavTpl)) {$scriptProperties[''tplPage''] = $pageNavTpl;}\nif (!empty($pageNavOuterTpl)) {$scriptProperties[''tplPageWrapper''] = $pageNavOuterTpl;}\nif (!empty($pageActiveTpl)) {$scriptProperties[''tplPageActive''] = $pageActiveTpl;}\nif (!empty($pageFirstTpl)) {$scriptProperties[''tplPageFirst''] = $pageFirstTpl;}\nif (!empty($pagePrevTpl)) {$scriptProperties[''tplPagePrev''] = $pagePrevTpl;}\nif (!empty($pageNextTpl)) {$scriptProperties[''tplPageNext''] = $pageNextTpl;}\nif (!empty($pageLastTpl)) {$scriptProperties[''tplPageLast''] = $pageLastTpl;}\nif (!empty($pageSkipTpl)) {$scriptProperties[''tplPageSkip''] = $pageSkipTpl;}\nif (!empty($pageNavScheme)) {$scriptProperties[''scheme''] = $pageNavScheme;}\nif (!empty($cache_expires)) {$scriptProperties[''cacheTime''] = $cache_expires;}\n//---\n\n$isAjax = !empty($scriptProperties[''ajax'']) && !empty($_SERVER[''HTTP_X_REQUESTED_WITH'']) && $_SERVER[''HTTP_X_REQUESTED_WITH''] == ''XMLHttpRequest'';\nif ($isAjax && !isset($_REQUEST[$pageVarKey])) {\n	return;\n}\n\n/** @var pdoPage $pdoPage */\nif (!$modx->loadClass(''pdotools.pdoPage'', MODX_CORE_PATH . ''components/pdotools/model/'', false, true)) {\n	$modx->log(modX::LOG_LEVEL_ERROR, ''Could not load pdoPage from "MODX_CORE_PATH/components/pdotools/model/".'');\n	return false;\n}\n$pdoPage = new pdoPage($modx, $scriptProperties);\n$pdoPage->pdoTools->addTime(''pdoTools loaded'');\n\n// Script and styles\nif (!$isAjax && !empty($scriptProperties[''ajaxMode''])) {\n	$pdoPage->loadJsCss();\n}\nelseif ($snippet = $modx->getObject(''modSnippet'', array(''name'' => ''pdoPage''))) {\n	// Removing default scripts and styles if they don`t need\n	$properties = $snippet->get(''properties'');\n	if ($scriptProperties[''frontend_js''] == $properties[''frontend_js''][''value'']) {\n		unset($scriptProperties[''frontend_js'']);\n	}\n	if ($scriptProperties[''frontend_css''] == $properties[''frontend_css''][''value'']) {\n		unset($scriptProperties[''frontend_css'']);\n	}\n}\n\n// Page\nif (isset($_REQUEST[$pageVarKey]) && (!is_numeric($_REQUEST[$pageVarKey]) || ($_REQUEST[$pageVarKey] <= 1 && !$isAjax))) {\n	return $pdoPage->redirectToFirst($isAjax);\n}\nelseif (!empty($_REQUEST[$pageVarKey])) {\n	$page = (integer) $_REQUEST[$pageVarKey];\n}\n$scriptProperties[''page''] = $page;\n$scriptProperties[''request''] = $_REQUEST;\n\n// Limit\nif (isset($_REQUEST[''limit''])) {\n	if (is_numeric($_REQUEST[''limit'']) && abs($_REQUEST[''limit'']) > 0) {\n		$scriptProperties[''limit''] = abs($_REQUEST[''limit'']);\n	}\n	else {\n		unset($_GET[''limit'']);\n		return $pdoPage->redirectToFirst($isAjax);\n	}\n}\nif (!empty($maxLimit) && !empty($scriptProperties[''limit'']) && $scriptProperties[''limit''] > $maxLimit) {\n	$scriptProperties[''limit''] = $maxLimit;\n}\n\n// Offset\nif ($page > 1) {\n	$scriptProperties[''offset''] = empty($offset)\n		? $scriptProperties[''limit''] * $page - $scriptProperties[''limit'']\n		: $scriptProperties[''limit''] * $page - $scriptProperties[''limit''] + $offset;\n}\nif (!empty($scriptProperties[''offset'']) && empty($scriptProperties[''limit''])) {\n	$scriptProperties[''limit''] = 10000000;\n}\n\n$url = $pdoPage->getBaseUrl();\n$output = $pagination = $total = $pageCount = '''';\n\n$data = !empty($cache) || !$modx->user->id && !empty($cacheAnonymous)\n	? $pdoPage->pdoTools->getCache($scriptProperties)\n	: array();\n\nif (empty($data)) {\n	if ($object = $modx->getObject(''modSnippet'', array(''name'' => $scriptProperties[''element'']))) {\n		$object->setCacheable(false);\n\n		if (!empty($toPlaceholder)) {\n			$object->process($scriptProperties);\n			$output = $modx->getPlaceholder($toPlaceholder);\n		} else {\n			$output = $object->process($scriptProperties);\n		}\n	}\n	else {\n		$modx->log(modX::LOG_LEVEL_ERROR, ''[pdoPage] Could not load element "''.$scriptProperties[''element''].''"'');\n		return '''';\n	}\n	/** Pagination */\n	$total = $modx->getPlaceholder($totalVar);\n	$pageCount = !empty($scriptProperties[''limit''])\n		? ceil($total / $scriptProperties[''limit''])\n		: 0;\n\n	// Redirect to start if somebody specified incorrect page\n	if ($page > 1 && $page > $pageCount) {\n		return $pdoPage->redirectToFirst($isAjax);\n	}\n	elseif (!empty($pageCount) && $pageCount > 1) {\n		$pagination = array(\n			''first'' => $page > 1 && !empty($tplPageFirst)\n				? $pdoPage->makePageLink($url, 1, $tplPageFirst)\n				: '''',\n			''prev'' => $page > 1 && !empty($tplPagePrev)\n				? $pdoPage->makePageLink($url, $page - 1, $tplPagePrev)\n				: '''',\n			''pages'' => $pageLimit >= 7 && empty($disableModernPagination)\n				? $pdoPage->buildModernPagination($page, $pageCount, $url)\n				: $pdoPage->buildClassicPagination($page, $pageCount, $url),\n			''next'' => $page < $pageCount && !empty($tplPageNext)\n				? $pdoPage->makePageLink($url, $page + 1, $tplPageNext)\n				: '''',\n			''last'' => $page < $pageCount && !empty($tplPageLast)\n				? $pdoPage->makePageLink($url, $pageCount, $tplPageLast)\n				: '''',\n		);\n\n		if (!empty($pageCount)) {\n			foreach (array(''first'',''prev'',''next'',''last'') as $v) {\n				$tpl = ''tplPage''.ucfirst($v).''Empty'';\n				if (!empty(${$tpl}) && empty($pagination[$v])) {\n					$pagination[$v] = $pdoPage->pdoTools->getChunk(${$tpl});\n				}\n			}\n		}\n\n		$pagination = !empty($tplPageWrapper)\n			? $pdoPage->pdoTools->getChunk($tplPageWrapper, $pagination)\n			: $pdoPage->pdoTools->parseChunk('''', $pagination);\n	}\n\n	$data = array(\n		''output'' => $output,\n		$pageVarKey => $page,\n		$pageCountVar => $pageCount,\n		$pageNavVar => $pagination,\n		$totalVar => $total,\n	);\n	if (!empty($cache) || !$modx->user->id && !empty($cacheAnonymous)) {\n		$pdoPage->pdoTools->setCache($data, $scriptProperties);\n	}\n}\n\nif ($isAjax) {\n	if ($pageNavVar != ''pagination'') {\n		$data[''pagination''] = $data[$pageNavVar];\n		unset($data[$pageNavVar]);\n	}\n	if ($pageCountVar != ''pages'') {\n		$data[''pages''] = (int)$data[$pageCountVar];\n		unset($data[$pageCountVar]);\n	}\n	if ($pageVarKey != ''page'') {\n		$data[''page''] = (int)$data[$pageVarKey];\n		unset($data[$pageVarKey]);\n	}\n	if ($totalVar != ''total'') {\n		$data[''total''] = (int)$data[$totalVar];\n		unset($data[$totalVar]);\n	}\n\n	@session_write_close();\n	exit($modx->toJSON($data));\n}\nelse {\n	$modx->setPlaceholders($data, $plPrefix);\n	if (!empty($toPlaceholder)) {\n		$modx->setPlaceholder($toPlaceholder, $data[''output'']);\n	}\n	else {\n		return $data[''output''];\n	}\n}', 0, 'a:37:{s:8:"plPrefix";a:7:{s:4:"name";s:8:"plPrefix";s:4:"desc";s:22:"pdotools_prop_plPrefix";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"limit";a:7:{s:4:"name";s:5:"limit";s:4:"desc";s:19:"pdotools_prop_limit";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:10;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"maxLimit";a:7:{s:4:"name";s:8:"maxLimit";s:4:"desc";s:22:"pdotools_prop_maxLimit";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:100;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"offset";a:7:{s:4:"name";s:6:"offset";s:4:"desc";s:20:"pdotools_prop_offset";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:4:"page";a:7:{s:4:"name";s:4:"page";s:4:"desc";s:18:"pdotools_prop_page";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"pageVarKey";a:7:{s:4:"name";s:10:"pageVarKey";s:4:"desc";s:24:"pdotools_prop_pageVarKey";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:4:"page";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"totalVar";a:7:{s:4:"name";s:8:"totalVar";s:4:"desc";s:22:"pdotools_prop_totalVar";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:10:"page.total";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"pageLimit";a:7:{s:4:"name";s:9:"pageLimit";s:4:"desc";s:23:"pdotools_prop_pageLimit";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:5;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"element";a:7:{s:4:"name";s:7:"element";s:4:"desc";s:21:"pdotools_prop_element";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:12:"pdoResources";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"pageNavVar";a:7:{s:4:"name";s:10:"pageNavVar";s:4:"desc";s:24:"pdotools_prop_pageNavVar";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:8:"page.nav";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"pageCountVar";a:7:{s:4:"name";s:12:"pageCountVar";s:4:"desc";s:26:"pdotools_prop_pageCountVar";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:9:"pageCount";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"tplPage";a:7:{s:4:"name";s:7:"tplPage";s:4:"desc";s:21:"pdotools_prop_tplPage";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:52:"@INLINE <li><a href="[[+href]]">[[+pageNo]]</a></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:14:"tplPageWrapper";a:7:{s:4:"name";s:14:"tplPageWrapper";s:4:"desc";s:28:"pdotools_prop_tplPageWrapper";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:113:"@INLINE <div class="pagination"><ul class="pagination">[[+first]][[+prev]][[+pages]][[+next]][[+last]]</ul></div>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"tplPageActive";a:7:{s:4:"name";s:13:"tplPageActive";s:4:"desc";s:27:"pdotools_prop_tplPageActive";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:67:"@INLINE <li class="active"><a href="[[+href]]">[[+pageNo]]</a></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"tplPageFirst";a:7:{s:4:"name";s:12:"tplPageFirst";s:4:"desc";s:26:"pdotools_prop_tplPageFirst";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:75:"@INLINE <li class="control"><a href="[[+href]]">[[%pdopage_first]]</a></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"tplPageLast";a:7:{s:4:"name";s:11:"tplPageLast";s:4:"desc";s:25:"pdotools_prop_tplPageLast";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:74:"@INLINE <li class="control"><a href="[[+href]]">[[%pdopage_last]]</a></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"tplPagePrev";a:7:{s:4:"name";s:11:"tplPagePrev";s:4:"desc";s:25:"pdotools_prop_tplPagePrev";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:64:"@INLINE <li class="control"><a href="[[+href]]">&laquo;</a></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"tplPageNext";a:7:{s:4:"name";s:11:"tplPageNext";s:4:"desc";s:25:"pdotools_prop_tplPageNext";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:64:"@INLINE <li class="control"><a href="[[+href]]">&raquo;</a></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"tplPageSkip";a:7:{s:4:"name";s:11:"tplPageSkip";s:4:"desc";s:25:"pdotools_prop_tplPageSkip";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:50:"@INLINE <li class="disabled"><span>...</span></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:17:"tplPageFirstEmpty";a:7:{s:4:"name";s:17:"tplPageFirstEmpty";s:4:"desc";s:31:"pdotools_prop_tplPageFirstEmpty";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:64:"@INLINE <li class="control"><span>[[%pdopage_first]]</span></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:16:"tplPageLastEmpty";a:7:{s:4:"name";s:16:"tplPageLastEmpty";s:4:"desc";s:30:"pdotools_prop_tplPageLastEmpty";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:63:"@INLINE <li class="control"><span>[[%pdopage_last]]</span></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:16:"tplPagePrevEmpty";a:7:{s:4:"name";s:16:"tplPagePrevEmpty";s:4:"desc";s:30:"pdotools_prop_tplPagePrevEmpty";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:54:"@INLINE <li class="disabled"><span>&laquo;</span></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:16:"tplPageNextEmpty";a:7:{s:4:"name";s:16:"tplPageNextEmpty";s:4:"desc";s:30:"pdotools_prop_tplPageNextEmpty";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:54:"@INLINE <li class="disabled"><span>&raquo;</span></li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"cache";a:7:{s:4:"name";s:5:"cache";s:4:"desc";s:19:"pdotools_prop_cache";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"cacheTime";a:7:{s:4:"name";s:9:"cacheTime";s:4:"desc";s:23:"pdotools_prop_cacheTime";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:3600;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:14:"cacheAnonymous";a:7:{s:4:"name";s:14:"cacheAnonymous";s:4:"desc";s:28:"pdotools_prop_cacheAnonymous";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"toPlaceholder";a:7:{s:4:"name";s:13:"toPlaceholder";s:4:"desc";s:27:"pdotools_prop_toPlaceholder";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:4:"ajax";a:7:{s:4:"name";s:4:"ajax";s:4:"desc";s:18:"pdotools_prop_ajax";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"ajaxMode";a:7:{s:4:"name";s:8:"ajaxMode";s:4:"desc";s:22:"pdotools_prop_ajaxMode";s:4:"type";s:4:"list";s:7:"options";a:4:{i:0;a:2:{s:4:"text";s:4:"None";s:5:"value";s:0:"";}i:1;a:2:{s:4:"text";s:7:"Default";s:5:"value";s:7:"default";}i:2;a:2:{s:4:"text";s:6:"Scroll";s:5:"value";s:6:"scroll";}i:3;a:2:{s:4:"text";s:6:"Button";s:5:"value";s:6:"button";}}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"ajaxElemWrapper";a:7:{s:4:"name";s:15:"ajaxElemWrapper";s:4:"desc";s:29:"pdotools_prop_ajaxElemWrapper";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:8:"#pdopage";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"ajaxElemRows";a:7:{s:4:"name";s:12:"ajaxElemRows";s:4:"desc";s:26:"pdotools_prop_ajaxElemRows";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:14:"#pdopage .rows";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:18:"ajaxElemPagination";a:7:{s:4:"name";s:18:"ajaxElemPagination";s:4:"desc";s:32:"pdotools_prop_ajaxElemPagination";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:20:"#pdopage .pagination";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"ajaxElemLink";a:7:{s:4:"name";s:12:"ajaxElemLink";s:4:"desc";s:26:"pdotools_prop_ajaxElemLink";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:22:"#pdopage .pagination a";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"ajaxElemMore";a:7:{s:4:"name";s:12:"ajaxElemMore";s:4:"desc";s:26:"pdotools_prop_ajaxElemMore";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:18:"#pdopage .btn-more";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"ajaxTplMore";a:7:{s:4:"name";s:11:"ajaxTplMore";s:4:"desc";s:25:"pdotools_prop_ajaxTplMore";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:75:"@INLINE <button class="btn btn-default btn-more">[[%pdopage_more]]</button>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"frontend_js";a:7:{s:4:"name";s:11:"frontend_js";s:4:"desc";s:25:"pdotools_prop_frontend_js";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:27:"[[+assetsUrl]]js/pdopage.js";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"frontend_css";a:7:{s:4:"name";s:12:"frontend_css";s:4:"desc";s:26:"pdotools_prop_frontend_css";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:29:"[[+assetsUrl]]css/pdopage.css";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/pdotools/elements/snippets/snippet.pdopage.php');
INSERT INTO `modx_site_snippets` (`id`, `source`, `property_preprocess`, `name`, `description`, `editor_type`, `category`, `cache_type`, `snippet`, `locked`, `properties`, `moduleguid`, `static`, `static_file`) VALUES
(16, 1, 0, 'pdoMenu', '', 0, 2, 0, '/** @var array $scriptProperties */\n\n// Convert parameters from Wayfinder if exists\nif (isset($startId)) {\n	$scriptProperties[''parents''] = $startId;\n}\nif (!empty($includeDocs)) {\n	$tmp = array_map(''trim'', explode('','', $includeDocs));\n	foreach ($tmp as $v) {\n		if (!empty($scriptProperties[''resources''])) {\n			$scriptProperties[''resources''] .= '',''.$v;\n		}\n		else {\n			$scriptProperties[''resources''] = $v;\n		}\n	}\n}\nif (!empty($excludeDocs)) {\n	$tmp = array_map(''trim'', explode('','', $excludeDocs));\n	foreach ($tmp as $v) {\n		if (!empty($scriptProperties[''resources''])) {\n			$scriptProperties[''resources''] .= '',-''.$v;\n		}\n		else {\n			$scriptProperties[''resources''] = ''-''.$v;\n		}\n	}\n}\n\nif (!empty($previewUnpublished) && $modx->hasPermission(''view_unpublished'')) {\n	$scriptProperties[''showUnpublished''] = 1;\n}\n\n$scriptProperties[''depth''] = empty($level) ? 100 : abs($level) - 1;\nif (!empty($contexts)) {$scriptProperties[''context''] = $contexts;}\nif (empty($scriptProperties[''context''])) {$scriptProperties[''context''] = $modx->resource->context_key;}\n\n// Save original parents specified by user\n$specified_parents = array_map(''trim'', explode('','', $scriptProperties[''parents'']));\n\nif ($scriptProperties[''parents''] === '''') {\n	$scriptProperties[''parents''] = $modx->resource->id;\n}\nelseif ($scriptProperties[''parents''] === 0 || $scriptProperties[''parents''] === ''0'') {\n	if ($scriptProperties[''depth''] !== '''' && $scriptProperties[''depth''] !== 100) {\n		$contexts = array_map(''trim'', explode('','', $scriptProperties[''context'']));\n		$parents = array();\n		if (!empty($scriptProperties[''showDeleted''])) {\n			$pdoFetch = $modx->getService(''pdoFetch'');\n			foreach ($contexts as $ctx) {\n				$parents = array_merge($parents, $pdoFetch->getChildIds(''modResource'', 0, $scriptProperties[''depth''], array(''context'' => $ctx)));\n			}\n		}\n		else {\n			foreach ($contexts as $ctx) {\n				$parents = array_merge($parents, $modx->getChildIds(0, $scriptProperties[''depth''], array(''context'' => $ctx)));\n			}\n		}\n		$scriptProperties[''parents''] = !empty($parents) ? implode('','', $parents) : ''+0'';\n		$scriptProperties[''depth''] = 0;\n	}\n	$scriptProperties[''includeParents''] = 1;\n	$scriptProperties[''displayStart''] = 0;\n}\nelse {\n	$parents = array_map(''trim'', explode('','', $scriptProperties[''parents'']));\n	$parents_in = $parents_out = array();\n	foreach ($parents as $v) {\n		if (!is_numeric($v)) {continue;}\n		if ($v[0] == ''-'') {$parents_out[] = abs($v);}\n		else {$parents_in[] = abs($v);}\n	}\n\n	if (empty($parents_in)) {\n		$scriptProperties[''includeParents''] = 1;\n		$scriptProperties[''displayStart''] = 0;\n	}\n}\n\nif (!empty($displayStart)) {$scriptProperties[''includeParents''] = 1;}\nif (!empty($ph)) {$toPlaceholder = $ph;}\nif (!empty($sortOrder)) {$scriptProperties[''sortdir''] = $sortOrder;}\nif (!empty($sortBy)) {$scriptProperties[''sortby''] = $sortBy;}\nif (!empty($permissions)) {$scriptProperties[''checkPermissions''] = $permissions;}\nif (!empty($cacheResults)) {$scriptProperties[''cache''] = $cacheResults;}\nif (!empty($ignoreHidden)) {$scriptProperties[''showHidden''] = $ignoreHidden;}\n\n$wfTemplates = array(\n	''outerTpl'' => ''tplOuter'',\n	''rowTpl'' => ''tpl'',\n	''parentRowTpl'' => ''tplParentRow'',\n	''parentRowHereTpl'' => ''tplParentRowHere'',\n	''hereTpl'' => ''tplHere'',\n	''innerTpl'' => ''tplInner'',\n	''innerRowTpl'' => ''tplInnerRow'',\n	''innerHereTpl'' => ''tplInnerHere'',\n	''activeParentRowTpl'' => ''tplParentRowActive'',\n	''categoryFoldersTpl'' => ''tplCategoryFolder'',\n	''startItemTpl'' => ''tplStart''\n);\nforeach ($wfTemplates as $k => $v) {\n	if (isset(${$k})) {\n		$scriptProperties[$v] = ${$k};\n	}\n}\n\n//---\n\n/** @var pdoMenu $pdoMenu */\nif (!$modx->loadClass(''pdotools.pdoMenu'', MODX_CORE_PATH . ''components/pdotools/model/'', false, true)) {\n	$modx->log(modX::LOG_LEVEL_ERROR, ''Could not load pdoMenu from "MODX_CORE_PATH/components/pdotools/model/".'');\n	return false;\n}\n$pdoMenu = new pdoMenu($modx, $scriptProperties);\n$pdoMenu->pdoTools->addTime(''pdoTools loaded'');\n\n$output = !empty($cache) || !$modx->user->id && !empty($cacheAnonymous)\n	? $output = $pdoMenu->pdoTools->getCache($scriptProperties)\n	: '''';\n\nif (empty($output)) {\n	$rows = $pdoMenu->pdoTools->run();\n	$tmp = $pdoMenu->pdoTools->buildTree($rows);\n	$tree = array();\n	foreach ($tmp as $k => $v) {\n		if (empty($v[''id''])) {\n			if (!in_array($k, $specified_parents) && !$pdoMenu->checkResource($k)) {\n				continue;\n			}\n			else {\n				$tree = array_merge($tree, $v[''children'']);\n			}\n		}\n		else {\n			$tree[$k] = $v;\n		}\n	}\n\n	$output = $pdoMenu->templateTree($tree);\n	if (!empty($cache) || !$modx->user->id && !empty($cacheAnonymous)) {\n		$pdoMenu->pdoTools->setCache($output, $scriptProperties);\n	}\n}\n\nif ($modx->user->hasSessionContext(''mgr'') && !empty($showLog)) {\n	$output .= ''<pre class="pdoMenuLog">'' . print_r($pdoMenu->pdoTools->getTime(), 1) . ''</pre>'';\n}\n\nif (!empty($toPlaceholder)) {\n	$modx->setPlaceholder($toPlaceholder, $output);\n}\nelse {\n	return $output;\n}', 0, 'a:51:{s:7:"showLog";a:7:{s:4:"name";s:7:"showLog";s:4:"desc";s:21:"pdotools_prop_showLog";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"fastMode";a:7:{s:4:"name";s:8:"fastMode";s:4:"desc";s:22:"pdotools_prop_fastMode";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"level";a:7:{s:4:"name";s:5:"level";s:4:"desc";s:19:"pdotools_prop_level";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"parents";a:7:{s:4:"name";s:7:"parents";s:4:"desc";s:21:"pdotools_prop_parents";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"displayStart";a:7:{s:4:"name";s:12:"displayStart";s:4:"desc";s:26:"pdotools_prop_displayStart";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"resources";a:7:{s:4:"name";s:9:"resources";s:4:"desc";s:23:"pdotools_prop_resources";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"templates";a:7:{s:4:"name";s:9:"templates";s:4:"desc";s:23:"pdotools_prop_templates";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"context";a:7:{s:4:"name";s:7:"context";s:4:"desc";s:21:"pdotools_prop_context";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"cache";a:7:{s:4:"name";s:5:"cache";s:4:"desc";s:19:"pdotools_prop_cache";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"cacheTime";a:7:{s:4:"name";s:9:"cacheTime";s:4:"desc";s:23:"pdotools_prop_cacheTime";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:3600;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:14:"cacheAnonymous";a:7:{s:4:"name";s:14:"cacheAnonymous";s:4:"desc";s:28:"pdotools_prop_cacheAnonymous";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"plPrefix";a:7:{s:4:"name";s:8:"plPrefix";s:4:"desc";s:22:"pdotools_prop_plPrefix";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:3:"wf.";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"showHidden";a:7:{s:4:"name";s:10:"showHidden";s:4:"desc";s:24:"pdotools_prop_showHidden";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:15:"showUnpublished";a:7:{s:4:"name";s:15:"showUnpublished";s:4:"desc";s:29:"pdotools_prop_showUnpublished";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"showDeleted";a:7:{s:4:"name";s:11:"showDeleted";s:4:"desc";s:25:"pdotools_prop_showDeleted";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:18:"previewUnpublished";a:7:{s:4:"name";s:18:"previewUnpublished";s:4:"desc";s:32:"pdotools_prop_previewUnpublished";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"hideSubMenus";a:7:{s:4:"name";s:12:"hideSubMenus";s:4:"desc";s:26:"pdotools_prop_hideSubMenus";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"useWeblinkUrl";a:7:{s:4:"name";s:13:"useWeblinkUrl";s:4:"desc";s:27:"pdotools_prop_useWeblinkUrl";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"sortdir";a:7:{s:4:"name";s:7:"sortdir";s:4:"desc";s:21:"pdotools_prop_sortdir";s:4:"type";s:4:"list";s:7:"options";a:2:{i:0;a:2:{s:4:"text";s:3:"ASC";s:5:"value";s:3:"ASC";}i:1;a:2:{s:4:"text";s:4:"DESC";s:5:"value";s:4:"DESC";}}s:5:"value";s:3:"ASC";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"sortby";a:7:{s:4:"name";s:6:"sortby";s:4:"desc";s:20:"pdotools_prop_sortby";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:9:"menuindex";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"limit";a:7:{s:4:"name";s:5:"limit";s:4:"desc";s:19:"pdotools_prop_limit";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"offset";a:7:{s:4:"name";s:6:"offset";s:4:"desc";s:20:"pdotools_prop_offset";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"rowIdPrefix";a:7:{s:4:"name";s:11:"rowIdPrefix";s:4:"desc";s:25:"pdotools_prop_rowIdPrefix";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"firstClass";a:7:{s:4:"name";s:10:"firstClass";s:4:"desc";s:24:"pdotools_prop_firstClass";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:5:"first";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"lastClass";a:7:{s:4:"name";s:9:"lastClass";s:4:"desc";s:23:"pdotools_prop_lastClass";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:4:"last";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"hereClass";a:7:{s:4:"name";s:9:"hereClass";s:4:"desc";s:23:"pdotools_prop_hereClass";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:6:"active";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"parentClass";a:7:{s:4:"name";s:11:"parentClass";s:4:"desc";s:25:"pdotools_prop_parentClass";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"rowClass";a:7:{s:4:"name";s:8:"rowClass";s:4:"desc";s:22:"pdotools_prop_rowClass";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"outerClass";a:7:{s:4:"name";s:10:"outerClass";s:4:"desc";s:24:"pdotools_prop_outerClass";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"innerClass";a:7:{s:4:"name";s:10:"innerClass";s:4:"desc";s:24:"pdotools_prop_innerClass";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:10:"levelClass";a:7:{s:4:"name";s:10:"levelClass";s:4:"desc";s:24:"pdotools_prop_levelClass";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:9:"selfClass";a:7:{s:4:"name";s:9:"selfClass";s:4:"desc";s:23:"pdotools_prop_selfClass";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"webLinkClass";a:7:{s:4:"name";s:12:"webLinkClass";s:4:"desc";s:26:"pdotools_prop_webLinkClass";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"tplOuter";a:7:{s:4:"name";s:8:"tplOuter";s:4:"desc";s:22:"pdotools_prop_tplOuter";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:41:"@INLINE <ul[[+classes]]>[[+wrapper]]</ul>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:3:"tpl";a:7:{s:4:"name";s:3:"tpl";s:4:"desc";s:17:"pdotools_prop_tpl";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:95:"@INLINE <li[[+classes]]><a href="[[+link]]" [[+attributes]]>[[+menutitle]]</a>[[+wrapper]]</li>";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"tplParentRow";a:7:{s:4:"name";s:12:"tplParentRow";s:4:"desc";s:26:"pdotools_prop_tplParentRow";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:16:"tplParentRowHere";a:7:{s:4:"name";s:16:"tplParentRowHere";s:4:"desc";s:30:"pdotools_prop_tplParentRowHere";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:7:"tplHere";a:7:{s:4:"name";s:7:"tplHere";s:4:"desc";s:21:"pdotools_prop_tplHere";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"tplInner";a:7:{s:4:"name";s:8:"tplInner";s:4:"desc";s:22:"pdotools_prop_tplInner";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:11:"tplInnerRow";a:7:{s:4:"name";s:11:"tplInnerRow";s:4:"desc";s:25:"pdotools_prop_tplInnerRow";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:12:"tplInnerHere";a:7:{s:4:"name";s:12:"tplInnerHere";s:4:"desc";s:26:"pdotools_prop_tplInnerHere";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:18:"tplParentRowActive";a:7:{s:4:"name";s:18:"tplParentRowActive";s:4:"desc";s:32:"pdotools_prop_tplParentRowActive";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:17:"tplCategoryFolder";a:7:{s:4:"name";s:17:"tplCategoryFolder";s:4:"desc";s:31:"pdotools_prop_tplCategoryFolder";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:8:"tplStart";a:7:{s:4:"name";s:8:"tplStart";s:4:"desc";s:22:"pdotools_prop_tplStart";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:55:"@INLINE <h2[[+classes]]>[[+menutitle]]</h2>[[+wrapper]]";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:16:"checkPermissions";a:7:{s:4:"name";s:16:"checkPermissions";s:4:"desc";s:30:"pdotools_prop_checkPermissions";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"hereId";a:7:{s:4:"name";s:6:"hereId";s:4:"desc";s:20:"pdotools_prop_hereId";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:5:"where";a:7:{s:4:"name";s:5:"where";s:4:"desc";s:19:"pdotools_prop_where";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"select";a:7:{s:4:"name";s:6:"select";s:4:"desc";s:20:"pdotools_prop_select";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:6:"scheme";a:7:{s:4:"name";s:6:"scheme";s:4:"desc";s:20:"pdotools_prop_scheme";s:4:"type";s:4:"list";s:7:"options";a:5:{i:0;a:2:{s:5:"value";i:-1;s:4:"text";s:25:"-1 (relative to site_url)";}i:1;a:2:{s:5:"value";s:4:"full";s:4:"text";s:40:"full (absolute, prepended with site_url)";}i:2;a:2:{s:5:"value";s:3:"abs";s:4:"text";s:39:"abs (absolute, prepended with base_url)";}i:3;a:2:{s:5:"value";s:4:"http";s:4:"text";s:38:"http (absolute, forced to http scheme)";}i:4;a:2:{s:5:"value";s:5:"https";s:4:"text";s:40:"https (absolute, forced to https scheme)";}}s:5:"value";i:-1;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"toPlaceholder";a:7:{s:4:"name";s:13:"toPlaceholder";s:4:"desc";s:27:"pdotools_prop_toPlaceholder";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}s:13:"countChildren";a:7:{s:4:"name";s:13:"countChildren";s:4:"desc";s:27:"pdotools_prop_countChildren";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:19:"pdotools:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/pdotools/elements/snippets/snippet.pdomenu.php'),
(17, 1, 0, 'AjaxForm', '', 0, 3, 0, '/** @var array $scriptProperties */\n/** @var AjaxForm $AjaxForm */\n$AjaxForm = $modx->getService(''ajaxform'',''AjaxForm'',$modx->getOption(''ajaxform_core_path'',null,$modx->getOption(''core_path'').''components/ajaxform/'').''model/ajaxform/'',$scriptProperties);\nif (!($AjaxForm instanceof AjaxForm)) return '''';\n$AjaxForm->initialize($modx->context->key);\n\n$snippet = $modx->getOption(''snippet'', $scriptProperties, ''FormIt'', true);\n$tpl = $modx->getOption(''form'', $scriptProperties, ''tpl.AjaxForm.example'', true);\n$formSelector = $modx->getOption(''formSelector'', $scriptProperties, ''ajax_form'', true);\nif (!isset($placeholderPrefix)) {$placeholderPrefix = ''fi.'';}\n\n/** @var pdoTools $pdo */\nif ($pdo = $modx->getService(''pdoTools'')) {\n	$content = $pdo->getChunk($tpl, $scriptProperties);\n}\n/** @var modChunk $chunk */\nelseif (!$content = $modx->getChunk($tpl, $scriptProperties)) {\n	return $modx->lexicon(''af_err_chunk_nf'', array(''name'' => $tpl));\n}\n\n// Add selector to tag form\nif (preg_match(''/<form.*?class="(.*?)"/'', $content, $matches)) {\n	$classes = explode('' '', $matches[1]);\n	if (!in_array($formSelector, $classes)) {\n		$classes[] = $formSelector;\n		$classes = str_replace(''class="''.$matches[1].''"'', ''class="''.implode('' '', $classes).''"'', $matches[0]);\n		$content = str_replace($matches[0], $classes, $content);\n	}\n}\nelse {\n	$content = str_replace(''<form'', ''<form class="''.$formSelector.''"'', $content);\n}\n\n// Add method = post\nif (preg_match(''/<form.*?method="(.*?)"/'', $content)) {\n	$content = preg_replace(''/<form(.*?)method="(.*?)"/'', ''<form\\\\1method="post"'', $content);\n}\nelse {\n	$content = str_replace(''<form'', ''<form method="post"'', $content);\n}\n\n// Add action for form processing\n$hash = md5(http_build_query($scriptProperties));\n$action = ''<input type="hidden" name="af_action" value="''.$hash.''" />'';\nif ((strpos($content, ''</form>'') !== false)) {\n	if (preg_match(''/<input.*?name="af_action".*?>/'', $content, $matches)) {\n		$content = str_replace($matches[0], '''', $content);\n	}\n	$content = str_replace(''</form>'', "\\n\\t$action\\n</form>", $content);\n}\n\n// Save settings to user`s session\n$_SESSION[''AjaxForm''][$hash] = $scriptProperties;\n\n// Call snippet for preparation of form\n$action = !empty($_REQUEST[''af_action''])\n	? $_REQUEST[''af_action'']\n	: $hash;\n\n$AjaxForm->process($action, $_REQUEST);\n\n// Return chunk\nreturn $content;', 0, 'a:5:{s:4:"form";a:7:{s:4:"name";s:4:"form";s:4:"desc";s:18:"ajaxform_prop_form";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:20:"tpl.AjaxForm.example";s:7:"lexicon";s:19:"ajaxform:properties";s:4:"area";s:0:"";}s:7:"snippet";a:7:{s:4:"name";s:7:"snippet";s:4:"desc";s:21:"ajaxform_prop_snippet";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:6:"FormIt";s:7:"lexicon";s:19:"ajaxform:properties";s:4:"area";s:0:"";}s:12:"frontend_css";a:7:{s:4:"name";s:12:"frontend_css";s:4:"desc";s:26:"ajaxform_prop_frontend_css";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:29:"[[+assetsUrl]]css/default.css";s:7:"lexicon";s:19:"ajaxform:properties";s:4:"area";s:0:"";}s:11:"frontend_js";a:7:{s:4:"name";s:11:"frontend_js";s:4:"desc";s:25:"ajaxform_prop_frontend_js";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:27:"[[+assetsUrl]]js/default.js";s:7:"lexicon";s:19:"ajaxform:properties";s:4:"area";s:0:"";}s:9:"actionUrl";a:7:{s:4:"name";s:9:"actionUrl";s:4:"desc";s:23:"ajaxform_prop_actionUrl";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:24:"[[+assetsUrl]]action.php";s:7:"lexicon";s:19:"ajaxform:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/ajaxform/elements/snippets/snippet.ajaxform.php'),
(18, 1, 0, 'dateAgo', '', 0, 0, 0, '/**\n * Formats date to "10 minutes ago" or "Yesterday in 22:10"\n * This algorithm taken from https://github.com/livestreet/livestreet/blob/7a6039b21c326acf03c956772325e1398801c5fe/engine/modules/viewer/plugs/function.date_format.php\n *\n * @var array $scriptProperties\n * @var string $input Date to format\n */\nif (empty($input)) {return false;}\nif (!empty($options) && $options = $modx->fromJSON($options)) {\n	$scriptProperties = array_merge($scriptProperties,$options);\n}\n\nrequire_once(MODX_CORE_PATH . ''components/dateago/include/declension.php'');\n$modx->lexicon->load(''dateago:default'');\n\n$date = preg_match(''/^\\d+$/'',$input)\n	? $input\n	: strtotime($input);\n$current = !empty($scriptProperties[''current''])\n	? $scriptProperties[''current'']\n	: time();\n$dateFormat = $scriptProperties[''dateFormat''];\n$delta = $current - $date;\n\nif (!empty($scriptProperties[''dateNow''])) {\n	if ($delta < $scriptProperties[''dateNow'']) {\n		return $modx->lexicon(''da_now'');\n	}\n}\n\nif (!empty($scriptProperties[''dateMinutes''])) {\n	$minutes = round(($delta) / 60);\n	if ($minutes < $scriptProperties[''dateMinutes'']) {\n		if ($minutes > 0) {\n			return declension($minutes, $modx->lexicon(''da_minutes'',array(''minutes'' => $minutes)));\n		}\n		else {\n			return $modx->lexicon(''da_minutes_less'');\n		}\n	}\n}\n\nif (!empty($scriptProperties[''dateHours''])) {\n	$hours = round(($delta) / 3600);\n	if ($hours < $scriptProperties[''dateHours'']) {\n		if ($hours > 0) {\n			return declension($hours, $modx->lexicon(''da_hours'',array(''hours'' => $hours)));\n		}\n		else {\n			return $modx->lexicon(''da_hours_less'');\n		}\n	}\n}\n\nif (!empty($scriptProperties[''dateDay''])) {\n	switch(date(''Y-m-d'', $date)) {\n		case date(''Y-m-d''):\n			$day = $modx->lexicon(''da_today'');\n			break;\n		case date(''Y-m-d'', mktime(0, 0, 0, date(''m'')  , date(''d'')-1, date(''Y'')) ):\n			$day = $modx->lexicon(''da_yesterday'');\n			break;\n		case date(''Y-m-d'', mktime(0, 0, 0, date(''m'')  , date(''d'')+1, date(''Y'')) ):\n			$day = $modx->lexicon(''da_tomorrow'');\n			break;\n		default:\n			$day = null;\n	}\n	if($day) {\n		$format = str_replace("day",preg_replace("#(\\w{1})#",''\\\\\\${1}'',$day),$scriptProperties[''dateDay'']);\n		return date($format,$date);\n	}\n}\n\n$month_arr = $modx->fromJSON($modx->lexicon(''da_months''));\n$m = date("n", $date);\n$month = $month_arr[$m - 1];\n\n$format = preg_replace("~(?<!\\\\\\\\)F~U", preg_replace(''~(\\w{1})~u'',''\\\\\\${1}'',$month), $dateFormat);\n\nreturn date($format ,$date);', 0, 'a:6:{s:5:"input";a:7:{s:4:"name";s:5:"input";s:4:"desc";s:8:"da_input";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:18:"dateago:properties";s:4:"area";s:0:"";}s:10:"dateFormat";a:7:{s:4:"name";s:10:"dateFormat";s:4:"desc";s:13:"da_dateFormat";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:10:"d F Y, H:i";s:7:"lexicon";s:18:"dateago:properties";s:4:"area";s:0:"";}s:7:"dateNow";a:7:{s:4:"name";s:7:"dateNow";s:4:"desc";s:10:"da_dateNow";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:10;s:7:"lexicon";s:18:"dateago:properties";s:4:"area";s:0:"";}s:7:"dateDay";a:7:{s:4:"name";s:7:"dateDay";s:4:"desc";s:10:"da_dateDay";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:7:"day H:i";s:7:"lexicon";s:18:"dateago:properties";s:4:"area";s:0:"";}s:11:"dateMinutes";a:7:{s:4:"name";s:11:"dateMinutes";s:4:"desc";s:14:"da_dateMinutes";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:2:"59";s:7:"lexicon";s:18:"dateago:properties";s:4:"area";s:0:"";}s:9:"dateHours";a:7:{s:4:"name";s:9:"dateHours";s:4:"desc";s:12:"da_dateHours";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";s:2:"10";s:7:"lexicon";s:18:"dateago:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/dateago/elements/snippets/snippet.dateago.php'),
(19, 0, 0, 'Title', '', 0, 0, 0, '// Определяем переменные\nif (empty($separator)) {$separator = '' / '';}\nif (empty($titlefield)) {$titlefield = ''longtitle'';}\nif (empty($parents_limit)) {$parents_limit = 3;}\nif (empty($tplPages)) {$tplPages = ''стр. [[+page]] из [[+pageCount]]'';}\n\n// Ключ и параметры кэширования\n$cacheKey = $modx->resource->getCacheKey() . ''/title_'' . sha1(serialize($_REQUEST));\n$cacheOptions = array(''cache_key'' => ''resource'');\n\nif (!$pagetitle = $modx->cacheManager->get($cacheKey, $cacheOptions)) {\n	// Узнаём имя страницы\n	$pagetitle = !empty($modx->resource->$titlefield)\n		? $modx->resource->$titlefield\n		: $modx->resource->pagetitle;\n	\n	// Добавляем поисковый запрос, если есть\n	if (!empty($_GET[''query'']) && strlen($_GET[''query'']) > 2) {\n		// Нужно использовать плейсхолдер, чтобы не подсунули бяку\n		$pagetitle .= '' «[[+mse2_query]]»'';\n	}\n\n	// Добавляем пагинацию, если есть\n	if (!empty($_GET[''page''])) {\n		$pagetitle .= $separator . str_replace(''[[+page]]'', intval($_GET[''page'']), $tplPages);\n	}\n	\n	// Добавляем родителей\n	$crumbs = $modx->runSnippet(''pdoCrumbs'', array(\n		''to'' => $modx->resource->id,\n		''limit'' => $parents_limit,\n		''outputSeparator'' => $separator,\n		''showHome'' => 0,\n		''showAtHome'' => 0,\n		''showCurrent'' => 0,\n		''direction'' => ''rtl'',\n		''tpl'' => ''@INLINE [[+menutitle]]'',\n		''tplCurrent'' => ''@INLINE [[+menutitle]]'',\n		''tplWrapper'' => ''@INLINE [[+output]]'',\n		''tplMax'' => ''''\n	));\n	if (!empty($crumbs)) {\n		$pagetitle = $pagetitle . $separator . $crumbs;\n	}\n\n	// Кэшируем результаты\n	$modx->cacheManager->set($cacheKey, $pagetitle, 0, $cacheOptions);\n}\n\n// Возвращаем title\nreturn $pagetitle;', 0, NULL, '', 0, ''),
(20, 0, 0, 'getSelections', '', 0, 10, 0, '/**\n * getSelections\n *\n * DESCRIPTION\n *\n * This snippet is a helper for getResources call.\n * It will allows you to select all linked resources under specific Selection with a usage of getResources snippet.\n * Returns distinct list of linked Resources for given Selections\n *\n * getResources are required\n *\n * PROPERTIES:\n *\n * &sortdir                 string  optional    Direction of sorting by linked resource''s menuindex. Default: ASC\n * &selections              string  optional    Comma separated list of Selection IDs for which should be retrieved linked resources. Default: empty string\n * &getResourcesSnippet     string  optional    Name of getResources snippet. Default: getResources\n *\n * USAGE:\n *\n * [[getSelections? &selections=`1` &tpl=`rowTpl`]]\n * [[getSelections? &selections=`1` &tpl=`rowTpl` &sortby=`RAND()`]]\n *\n */\n\n$collections = $modx->getService(''collections'',''Collections'',$modx->getOption(''collections.core_path'',null,$modx->getOption(''core_path'').''components/collections/'').''model/collections/'',$scriptProperties);\nif (!($collections instanceof Collections)) return '''';\n\n$getResourcesSnippet = $modx->getOption(''getResourcesSnippet'', $scriptProperties, ''getResources'');\n\n$getResourcesExists = $modx->getCount(''modSnippet'', array(''name'' => $getResourcesSnippet));\nif ($getResourcesExists == 0) return ''getResources not found'';\n\n$sortDir = strtolower($modx->getOption(''sortdir'', $scriptProperties, ''asc''));\n$selections = $modx->getOption(''selections'', $scriptProperties, '''');\n$sortBy = $modx->getOption(''sortby'', $scriptProperties, '''');\n\n$selections = $modx->collections->explodeAndClean($selections);\n\nif ($sortDir != ''asc'') {\n    $sortDir = ''desc'';\n}\n\n$linkedResourcesQuery = $modx->newQuery(''CollectionSelection'');\n\nif (!empty($selections)) {\n    $linkedResourcesQuery->where(array(\n        ''collection:IN'' => $selections\n    ));\n}\n\nif ($sortBy == '''') {\n    $linkedResourcesQuery->sortby(''menuindex'', $sortDir);\n}\n\n$linkedResourcesQuery->select(array(\n    ''resource'' => ''DISTINCT(resource)''\n));\n\n$linkedResourcesQuery->prepare();\n\n$linkedResourcesQuery->stmt->execute();\n\n$linkedResources = $linkedResourcesQuery->stmt->fetchAll(PDO::FETCH_COLUMN, 0);\n$linkedResources = implode('','', $linkedResources);\n\n$properties = $scriptProperties;\nunset($properties[''selections'']);\n\n$properties[''resources''] = $linkedResources;\n$properties[''parents''] = -1;\n\nif ($sortBy == '''') {\n    $properties[''sortby''] = ''FIELD(modResource.id, '' . $linkedResources . '' )'';\n    $properties[''sortdir''] = ''asc'';\n}\n\nreturn $modx->runSnippet($getResourcesSnippet, $properties);', 0, 'a:0:{}', '', 0, ''),
(21, 1, 0, 'FileAttach', '', 0, 11, 0, '/**\n * FileAttach\n *\n * Copyright 2015 by Vitaly Checkryzhev <13hakta@gmail.com>\n *\n * This file is part of FileAttach, tool to attach files to resources with\n * MODX Revolution''s Manager.\n *\n * FileAttach is free software; you can redistribute it and/or modify it under the\n * terms of the GNU General Public License as published by the Free Software\n * Foundation version 3,\n *\n * FileAttach is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * FileAttach; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package FileAttach\n*/\n\n/** @var array $scriptProperties */\n/** @var FileAttach $FileAttach */\nif (!$FileAttach = $modx->getService(''fileattach'', ''FileAttach'', $modx->getOption(''fileattach.core_path'', null, $modx->getOption(''core_path'') . ''components/fileattach/'') . ''model/fileattach/'', $scriptProperties)) {\n    return ''Could not load FileAttach class!'';\n}\n\n// Do your snippet code here.\n$tpl = $modx->getOption(''tpl'', $scriptProperties, ''FileItemTpl'');\n$sortby = $modx->getOption(''sortby'', $scriptProperties, ''name'');\n$sortdir = $modx->getOption(''sortbir'', $scriptProperties, ''ASC'');\n$limit = $modx->getOption(''limit'', $scriptProperties, 0);\n$outputSeparator = $modx->getOption(''outputSeparator'', $scriptProperties, "\\n");\n$toPlaceholder = $modx->getOption(''toPlaceholder'', $scriptProperties, false);\n$showHASH = $modx->getOption(''showHASH'', $scriptProperties, false);\n$resource = $modx->getOption(''resource'', $scriptProperties, 0);\n$makeUrl = $modx->getOption(''makeUrl'', $scriptProperties, true);\n$privateUrl = $modx->getOption(''privateUrl'', $scriptProperties, false);\n$showSize = $modx->getOption(''showSize'', $scriptProperties, false);\n\nif ($makeUrl) {\n if (!$privateUrl || $showSize) {\n  // Get base URLs\n  $mediaSource = $modx->getOption(''fileattach.mediasource'',null,1);\n\n  $ms = $modx->getObject(''sources.modMediaSource'', array(''id'' => $mediaSource));\n  $ms->initialize();\n\n  $files_path = $modx->getOption(''fileattach.files_path'');\n  $public_url = $ms->getBaseUrl() . $files_path;\n  $docs_path  = $ms->getBasePath() . $files_path;\n }\n\n $private_url = $modx->getOption(''fileattach.assets_url'', null, $modx->getOption(''assets_url'')) . ''components/fileattach/'';\n $private_url .= ''connector.php?action=web/download&ctx=web&id='';\n}\n\n// Build query\n$c = $modx->newQuery(''FileItem'');\n$c->sortby($sortby, $sortdir);\n$c->limit($limit);\n\nif ($showHASH)\n $c->select(''hash'');\n\n$c->where(array(''docid'' => ($resource > 0)? $resource : $modx->resource->get(''id'')));\n\n$items = $modx->getIterator(''FileItem'', $c);\n\n// Iterate through items\n$list = array();\n/** @var FileItem $item */\nforeach ($items as $item) {\n $item->source = $ms;\n $item->files_path = $files_path;\n\n $itemArr = $item->toArray();\n\n if ($makeUrl) {\n  if ($item->get(''private'') || $privateUrl)\n   $itemArr[''url''] = $private_url . $item->get(''id'');\n    else\n   $itemArr[''url''] = $public_url . $item->get(''path'') . $item->get(''name'');\n }\n\n if ($showSize)\n  $itemArr[''size''] = $item->getSize();\n\n $list[] = $modx->getChunk($tpl, $itemArr);\n}\n\n// Output\n$output = implode($outputSeparator, $list);\nif (!empty($toPlaceholder)) {\n // If using a placeholder, output nothing and set output to specified placeholder\n $modx->setPlaceholder($toPlaceholder, $output);\n\n return '''';\n}\n\nreturn $output;', 0, 'a:10:{s:3:"tpl";a:7:{s:4:"name";s:3:"tpl";s:4:"desc";s:19:"fileattach.prop_tpl";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:13:"FileAttachTpl";s:7:"lexicon";s:21:"fileattach:properties";s:4:"area";s:0:"";}s:6:"sortBy";a:7:{s:4:"name";s:6:"sortBy";s:4:"desc";s:22:"fileattach.prop_sortBy";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:4:"name";s:7:"lexicon";s:21:"fileattach:properties";s:4:"area";s:0:"";}s:7:"sortDir";a:7:{s:4:"name";s:7:"sortDir";s:4:"desc";s:23:"fileattach.prop_sortDir";s:4:"type";s:4:"list";s:7:"options";a:2:{i:0;a:2:{s:4:"text";s:3:"ASC";s:5:"value";s:3:"ASC";}i:1;a:2:{s:4:"text";s:4:"DESC";s:5:"value";s:4:"DESC";}}s:5:"value";s:3:"ASC";s:7:"lexicon";s:21:"fileattach:properties";s:4:"area";s:0:"";}s:5:"limit";a:7:{s:4:"name";s:5:"limit";s:4:"desc";s:21:"fileattach.prop_limit";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:0;s:7:"lexicon";s:21:"fileattach:properties";s:4:"area";s:0:"";}s:15:"outputSeparator";a:7:{s:4:"name";s:15:"outputSeparator";s:4:"desc";s:31:"fileattach.prop_outputSeparator";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:1:"\n";s:7:"lexicon";s:21:"fileattach:properties";s:4:"area";s:0:"";}s:13:"toPlaceholder";a:7:{s:4:"name";s:13:"toPlaceholder";s:4:"desc";s:29:"fileattach.prop_toPlaceholder";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:21:"fileattach:properties";s:4:"area";s:0:"";}s:8:"resource";a:7:{s:4:"name";s:8:"resource";s:4:"desc";s:24:"fileattach.prop_resource";s:4:"type";s:11:"numberfield";s:7:"options";a:0:{}s:5:"value";i:0;s:7:"lexicon";s:21:"fileattach:properties";s:4:"area";s:0:"";}s:7:"makeUrl";a:7:{s:4:"name";s:7:"makeUrl";s:4:"desc";s:23:"fileattach.prop_makeUrl";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:1;s:7:"lexicon";s:21:"fileattach:properties";s:4:"area";s:0:"";}s:10:"privateUrl";a:7:{s:4:"name";s:10:"privateUrl";s:4:"desc";s:26:"fileattach.prop_privateUrl";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:21:"fileattach:properties";s:4:"area";s:0:"";}s:8:"showSize";a:7:{s:4:"name";s:8:"showSize";s:4:"desc";s:24:"fileattach.prop_showSize";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:21:"fileattach:properties";s:4:"area";s:0:"";}}', '', 1, 'core/components/fileattach/elements/snippets/snippet.fileattach.php'),
(22, 1, 0, 'MinifyX', 'MinifyX is a snippet the allows you to combine and minify JS and CSS files', 0, 12, 0, '/** @var array $scriptProperties */\nif (!$modx->getService(''minifyx'',''MinifyX'', MODX_CORE_PATH.''components/minifyx/model/minifyx/'')) {return;}\n/** @var MinifyX $MinifyX */\n$MinifyX = new MinifyX($modx, $scriptProperties);\nif (!$MinifyX->prepareCacheFolder()) {\n	$modx->log(modX::LOG_LEVEL_ERROR, ''[MinifyX] Could not create cache dir "''.$MinifyX->config[''cacheFolder''].''"'');\n	return;\n}\n$cacheFolderUrl = MODX_BASE_URL . str_replace(MODX_BASE_PATH, '''', $MinifyX->config[''cacheFolder'']);\n\n$array = array(\n	''js'' => trim($modx->getOption(''jsSources'', $scriptProperties, '''', true)),\n	''css'' => trim($modx->getOption(''cssSources'', $scriptProperties, '''', true)),\n);\n\nforeach ($array as $type => $value) {\n	if (empty($value)) {continue;}\n	$filename = $MinifyX->config[$type.''Filename''] . ''_'';\n	$extension = $MinifyX->config[$type.''Ext''];\n	$register = $MinifyX->config[''register''.ucfirst($type)];\n	$placeholder = !empty($MinifyX->config[$type.''Placeholder''])\n		? $MinifyX->config[$type.''Placeholder'']\n		: '''';\n\n	$files = $MinifyX->prepareFiles($value);\n	$properties = array(\n		''minify'' => $MinifyX->config[''minify''.ucfirst($type)]\n				? ''true''\n				: ''false'',\n	);\n\n	$result = $MinifyX->Munee($files, $properties);\n	$file = $MinifyX->saveFile($result, $filename, $extension);\n\n	// Register file on frontend\n	if (!empty($file) && file_exists($MinifyX->config[''cacheFolder''] . $file)) {\n		if ($register == ''placeholder'' && $placeholder) {\n			$tag = $type == ''css''\n				? ''<link rel="stylesheet" href="'' . $cacheFolderUrl .  $file . ''" type="text/css" />''\n				: ''<script type="text/javascript" src="'' . $cacheFolderUrl . $file . ''"></script>'';\n			$modx->setPlaceholder($placeholder, $tag);\n		}\n		else {\n			if ($type == ''css'') {\n				$modx->regClientCSS($cacheFolderUrl . $file);\n			}\n			else {\n				if ($register == ''startup'') {\n					$modx->regClientStartupScript($cacheFolderUrl . $file);\n				}\n				else {\n					$modx->regClientScript($cacheFolderUrl . $file);\n				}\n			}\n		}\n	}\n}\nreturn;', 0, 'a:10:{s:9:"jsSources";a:7:{s:4:"name";s:9:"jsSources";s:4:"desc";s:22:"minifyx_prop_jsSources";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:18:"minifyx:properties";s:4:"area";s:0:"";}s:10:"cssSources";a:7:{s:4:"name";s:10:"cssSources";s:4:"desc";s:23:"minifyx_prop_cssSources";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:0:"";s:7:"lexicon";s:18:"minifyx:properties";s:4:"area";s:0:"";}s:8:"minifyJs";a:7:{s:4:"name";s:8:"minifyJs";s:4:"desc";s:21:"minifyx_prop_minifyJs";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:18:"minifyx:properties";s:4:"area";s:0:"";}s:9:"minifyCss";a:7:{s:4:"name";s:9:"minifyCss";s:4:"desc";s:22:"minifyx_prop_minifyCss";s:4:"type";s:13:"combo-boolean";s:7:"options";a:0:{}s:5:"value";b:0;s:7:"lexicon";s:18:"minifyx:properties";s:4:"area";s:0:"";}s:10:"jsFilename";a:7:{s:4:"name";s:10:"jsFilename";s:4:"desc";s:23:"minifyx_prop_jsFilename";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:7:"scripts";s:7:"lexicon";s:18:"minifyx:properties";s:4:"area";s:0:"";}s:11:"cssFilename";a:7:{s:4:"name";s:11:"cssFilename";s:4:"desc";s:24:"minifyx_prop_cssFilename";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:6:"styles";s:7:"lexicon";s:18:"minifyx:properties";s:4:"area";s:0:"";}s:10:"registerJs";a:7:{s:4:"name";s:10:"registerJs";s:4:"desc";s:23:"minifyx_prop_registerJs";s:4:"type";s:4:"list";s:7:"options";a:3:{i:0;a:2:{s:5:"value";s:11:"placeholder";s:4:"text";s:11:"Placeholder";}i:1;a:2:{s:5:"value";s:7:"startup";s:4:"text";s:14:"Startup script";}i:2;a:2:{s:5:"value";s:7:"default";s:4:"text";s:7:"Default";}}s:5:"value";s:11:"placeholder";s:7:"lexicon";s:18:"minifyx:properties";s:4:"area";s:0:"";}s:13:"jsPlaceholder";a:7:{s:4:"name";s:13:"jsPlaceholder";s:4:"desc";s:26:"minifyx_prop_jsPlaceholder";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:18:"MinifyX.javascript";s:7:"lexicon";s:18:"minifyx:properties";s:4:"area";s:0:"";}s:11:"registerCss";a:7:{s:4:"name";s:11:"registerCss";s:4:"desc";s:24:"minifyx_prop_registerCss";s:4:"type";s:4:"list";s:7:"options";a:2:{i:0;a:2:{s:5:"value";s:11:"placeholder";s:4:"text";s:11:"Placeholder";}i:1;a:2:{s:5:"value";s:7:"default";s:4:"text";s:7:"Default";}}s:5:"value";s:11:"placeholder";s:7:"lexicon";s:18:"minifyx:properties";s:4:"area";s:0:"";}s:14:"cssPlaceholder";a:7:{s:4:"name";s:14:"cssPlaceholder";s:4:"desc";s:27:"minifyx_prop_cssPlaceholder";s:4:"type";s:9:"textfield";s:7:"options";a:0:{}s:5:"value";s:11:"MinifyX.css";s:7:"lexicon";s:18:"minifyx:properties";s:4:"area";s:0:"";}}', '', 0, 'core/components/minifyx/elements/snippets/snippet.minifyx.php');
INSERT INTO `modx_site_snippets` (`id`, `source`, `property_preprocess`, `name`, `description`, `editor_type`, `category`, `cache_type`, `snippet`, `locked`, `properties`, `moduleguid`, `static`, `static_file`) VALUES
(23, 0, 0, 'getImageList', '', 0, 18, 0, '/**\n * getImageList\n *\n * Copyright 2009-2014 by Bruno Perner <b.perner@gmx.de>\n *\n * getImageList is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * getImageList is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * getImageList; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package migx\n */\n/**\n * getImageList\n *\n * display Items from outputvalue of TV with custom-TV-input-type MIGX or from other JSON-string for MODx Revolution \n *\n * @version 1.4\n * @author Bruno Perner <b.perner@gmx.de>\n * @copyright Copyright &copy; 2009-2014\n * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU General Public License\n * version 2 or (at your option) any later version.\n * @package migx\n */\n\n/*example: <ul>[[!getImageList? &tvname=`myTV`&tpl=`@CODE:<li>[[+idx]]<img src="[[+imageURL]]"/><p>[[+imageAlt]]</p></li>`]]</ul>*/\n/* get default properties */\n\n\n$tvname = $modx->getOption(''tvname'', $scriptProperties, '''');\n$tpl = $modx->getOption(''tpl'', $scriptProperties, '''');\n$wrapperTpl = $modx->getOption(''wrapperTpl'', $scriptProperties, '''');\n$limit = $modx->getOption(''limit'', $scriptProperties, ''0'');\n$offset = $modx->getOption(''offset'', $scriptProperties, 0);\n$totalVar = $modx->getOption(''totalVar'', $scriptProperties, ''total'');\n$randomize = $modx->getOption(''randomize'', $scriptProperties, false);\n$preselectLimit = $modx->getOption(''preselectLimit'', $scriptProperties, 0); // when random preselect important images\n$where = $modx->getOption(''where'', $scriptProperties, '''');\n$where = !empty($where) ? $modx->fromJSON($where) : array();\n$sort = $modx->getOption(''sort'', $scriptProperties, '''');\n$sort = !empty($sort) ? $modx->fromJSON($sort) : array();\n$toSeparatePlaceholders = $modx->getOption(''toSeparatePlaceholders'', $scriptProperties, false);\n$toPlaceholder = $modx->getOption(''toPlaceholder'', $scriptProperties, false);\n$outputSeparator = $modx->getOption(''outputSeparator'', $scriptProperties, '''');\n$splitSeparator = $modx->getOption(''splitSeparator'', $scriptProperties, '''');\n$placeholdersKeyField = $modx->getOption(''placeholdersKeyField'', $scriptProperties, ''MIGX_id'');\n$toJsonPlaceholder = $modx->getOption(''toJsonPlaceholder'', $scriptProperties, false);\n$jsonVarKey = $modx->getOption(''jsonVarKey'', $scriptProperties, ''migx_outputvalue'');\n$outputvalue = $modx->getOption(''value'', $scriptProperties, '''');\n$outputvalue = isset($_REQUEST[$jsonVarKey]) ? $_REQUEST[$jsonVarKey] : $outputvalue;\n$docidVarKey = $modx->getOption(''docidVarKey'', $scriptProperties, ''migx_docid'');\n$docid = $modx->getOption(''docid'', $scriptProperties, (isset($modx->resource) ? $modx->resource->get(''id'') : 1));\n$docid = isset($_REQUEST[$docidVarKey]) ? $_REQUEST[$docidVarKey] : $docid;\n$processTVs = $modx->getOption(''processTVs'', $scriptProperties, ''1'');\n$reverse = $modx->getOption(''reverse'', $scriptProperties, ''0'');\n$sumFields = $modx->getOption(''sumFields'', $scriptProperties, '''');\n$sumPrefix = $modx->getOption(''sumPrefix'', $scriptProperties, ''summary_'');\n$addfields = $modx->getOption(''addfields'', $scriptProperties, '''');\n$addfields = !empty($addfields) ? explode('','', $addfields) : null;\n//split json into parts\n$splits = $modx->fromJson($modx->getOption(''splits'', $scriptProperties, 0));\n$splitTpl = $modx->getOption(''splitTpl'', $scriptProperties, '''');\n$splitSeparator = $modx->getOption(''splitSeparator'', $scriptProperties, '''');\n$inheritFrom = $modx->getOption(''inheritFrom'', $scriptProperties, ''''); //commaseparated list of resource-ids or/and the keyword ''parents'' where to inherit from\n$inheritFrom = !empty($inheritFrom) ? explode('','',$inheritFrom) : '''';\n\n$modx->setPlaceholder(''docid'', $docid);\n\n$base_path = $modx->getOption(''base_path'', null, MODX_BASE_PATH);\n$base_url = $modx->getOption(''base_url'', null, MODX_BASE_URL);\n\n$migx = $modx->getService(''migx'', ''Migx'', $modx->getOption(''migx.core_path'', null, $modx->getOption(''core_path'') . ''components/migx/'') . ''model/migx/'', $scriptProperties);\nif (!($migx instanceof Migx))\n    return '''';\n$migx->working_context = isset($modx->resource) ? $modx->resource->get(''context_key'') : ''web'';\n\nif (!empty($tvname)) {\n    if ($tv = $modx->getObject(''modTemplateVar'', array(''name'' => $tvname))) {\n\n        /*\n        *   get inputProperties\n        */\n\n\n        $properties = $tv->get(''input_properties'');\n        $properties = isset($properties[''formtabs'']) ? $properties : $tv->getProperties();\n\n        $migx->config[''configs''] = $modx->getOption(''configs'', $properties, '''');\n        if (!empty($migx->config[''configs''])) {\n            $migx->loadConfigs();\n            // get tabs from file or migx-config-table\n            $formtabs = $migx->getTabs();\n        }\n        if (empty($formtabs) && isset($properties[''formtabs''])) {\n            //try to get formtabs and its fields from properties\n            $formtabs = $modx->fromJSON($properties[''formtabs'']);\n        }\n\n        if (!empty($properties[''basePath''])) {\n            if ($properties[''autoResourceFolders''] == ''true'') {\n                $scriptProperties[''base_path''] = $base_path . $properties[''basePath''] . $docid . ''/'';\n                $scriptProperties[''base_url''] = $base_url . $properties[''basePath''] . $docid . ''/'';\n            } else {\n                $scriptProperties[''base_path''] = $base_path . $properties[''base_path''];\n                $scriptProperties[''base_url''] = $base_url . $properties[''basePath''];\n            }\n        }\n        if ($jsonVarKey == ''migx_outputvalue'' && !empty($properties[''jsonvarkey''])) {\n            $jsonVarKey = $properties[''jsonvarkey''];\n            $outputvalue = isset($_REQUEST[$jsonVarKey]) ? $_REQUEST[$jsonVarKey] : $outputvalue;\n        }\n        \n        if (empty($outputvalue)){\n            $outputvalue = $tv->renderOutput($docid);\n            if (empty($outputvalue) && !empty($inheritFrom)){\n                foreach ($inheritFrom as $from){\n                    if ($from == ''parents''){\n                        $outputvalue = $tv->processInheritBinding('''',$docid);\n                    }else{\n                        $outputvalue = $tv->renderOutput($from);\n                    }\n                }\n            }\n        }\n        \n        \n        /*\n        *   get inputTvs \n        */\n        $inputTvs = array();\n        if (is_array($formtabs)) {\n\n            //multiple different Forms\n            // Note: use same field-names and inputTVs in all forms\n            $inputTvs = $migx->extractInputTvs($formtabs);\n        }\n        $migx->source = $tv->getSource($migx->working_context, false);\n    }\n\n\n}\n\nif (empty($outputvalue)) {\n    return '''';\n}\n\n//echo $outputvalue.''<br/><br/>'';\n\n$items = $modx->fromJSON($outputvalue);\n\n// where filter\nif (is_array($where) && count($where) > 0) {\n    $items = $migx->filterItems($where, $items);\n}\n$modx->setPlaceholder($totalVar, count($items));\n\nif (!empty($reverse)) {\n    $items = array_reverse($items);\n}\n\n// sort items\nif (is_array($sort) && count($sort) > 0) {\n    $items = $migx->sortDbResult($items, $sort);\n}\n\n$summaries = array();\n$output = '''';\n$items = $offset > 0 ? array_slice($items, $offset) : $items;\n$count = count($items);\n\nif ($count > 0) {\n    $limit = $limit == 0 || $limit > $count ? $count : $limit;\n    $preselectLimit = $preselectLimit > $count ? $count : $preselectLimit;\n    //preselect important items\n    $preitems = array();\n    if ($randomize && $preselectLimit > 0) {\n        for ($i = 0; $i < $preselectLimit; $i++) {\n            $preitems[] = $items[$i];\n            unset($items[$i]);\n        }\n        $limit = $limit - count($preitems);\n    }\n\n    //shuffle items\n    if ($randomize) {\n        shuffle($items);\n    }\n\n    //limit items\n    $count = count($items);\n    $tempitems = array();\n\n    for ($i = 0; $i < $limit; $i++) {\n        if ($i >= $count) {\n            break;\n        }\n        $tempitems[] = $items[$i];\n    }\n    $items = $tempitems;\n\n    //add preselected items and schuffle again\n    if ($randomize && $preselectLimit > 0) {\n        $items = array_merge($preitems, $items);\n        shuffle($items);\n    }\n\n    $properties = array();\n    foreach ($scriptProperties as $property => $value) {\n        $properties[''property.'' . $property] = $value;\n    }\n\n    $idx = 0;\n    $output = array();\n    $template = array();\n    $count = count($items);\n\n    foreach ($items as $key => $item) {\n        $formname = isset($item[''MIGX_formname'']) ? $item[''MIGX_formname''] . ''_'' : '''';\n        $fields = array();\n        foreach ($item as $field => $value) {\n            if (is_array($value)) {\n                if (is_array($value[0])) {\n                    //nested array - convert to json\n                    $value = $modx->toJson($value);\n                } else {\n                    $value = implode(''||'', $value); //handle arrays (checkboxes, multiselects)\n                }\n            }\n\n\n            $inputTVkey = $formname . $field;\n            if ($processTVs && isset($inputTvs[$inputTVkey])) {\n                if (isset($inputTvs[$inputTVkey][''inputTV'']) && $tv = $modx->getObject(''modTemplateVar'', array(''name'' => $inputTvs[$inputTVkey][''inputTV'']))) {\n\n                } else {\n                    $tv = $modx->newObject(''modTemplateVar'');\n                    $tv->set(''type'', $inputTvs[$inputTVkey][''inputTVtype'']);\n                }\n                $inputTV = $inputTvs[$inputTVkey];\n\n                $mTypes = $modx->getOption(''manipulatable_url_tv_output_types'', null, ''image,file'');\n                //don''t manipulate any urls here\n                $modx->setOption(''manipulatable_url_tv_output_types'', '''');\n                $tv->set(''default_text'', $value);\n                $value = $tv->renderOutput($docid);\n                //set option back\n                $modx->setOption(''manipulatable_url_tv_output_types'', $mTypes);\n                //now manipulate urls\n                if ($mediasource = $migx->getFieldSource($inputTV, $tv)) {\n                    $mTypes = explode('','', $mTypes);\n                    if (!empty($value) && in_array($tv->get(''type''), $mTypes)) {\n                        //$value = $mediasource->prepareOutputUrl($value);\n                        $value = str_replace(''/./'', ''/'', $mediasource->prepareOutputUrl($value));\n                    }\n                }\n\n            }\n            $fields[$field] = $value;\n\n        }\n\n        if (!empty($addfields)) {\n            foreach ($addfields as $addfield) {\n                $addfield = explode('':'', $addfield);\n                $addname = $addfield[0];\n                $adddefault = isset($addfield[1]) ? $addfield[1] : '''';\n                $fields[$addname] = $adddefault;\n            }\n        }\n\n        if (!empty($sumFields)) {\n            $sumFields = is_array($sumFields) ? $sumFields : explode('','', $sumFields);\n            foreach ($sumFields as $sumField) {\n                if (isset($fields[$sumField])) {\n                    $summaries[$sumPrefix . $sumField] = $summaries[$sumPrefix . $sumField] + $fields[$sumField];\n                    $fields[$sumPrefix . $sumField] = $summaries[$sumPrefix . $sumField];\n                }\n            }\n        }\n\n\n        if ($toJsonPlaceholder) {\n            $output[] = $fields;\n        } else {\n            $fields[''_alt''] = $idx % 2;\n            $idx++;\n            $fields[''_first''] = $idx == 1 ? true : '''';\n            $fields[''_last''] = $idx == $limit ? true : '''';\n            $fields[''idx''] = $idx;\n            $rowtpl = '''';\n            //get changing tpls from field\n            if (substr($tpl, 0, 7) == "@FIELD:") {\n                $tplField = substr($tpl, 7);\n                $rowtpl = $fields[$tplField];\n            }\n\n            if ($fields[''_first''] && !empty($tplFirst)) {\n                $rowtpl = $tplFirst;\n            }\n            if ($fields[''_last''] && empty($rowtpl) && !empty($tplLast)) {\n                $rowtpl = $tplLast;\n            }\n            $tplidx = ''tpl_'' . $idx;\n            if (empty($rowtpl) && !empty($$tplidx)) {\n                $rowtpl = $$tplidx;\n            }\n            if ($idx > 1 && empty($rowtpl)) {\n                $divisors = $migx->getDivisors($idx);\n                if (!empty($divisors)) {\n                    foreach ($divisors as $divisor) {\n                        $tplnth = ''tpl_n'' . $divisor;\n                        if (!empty($$tplnth)) {\n                            $rowtpl = $$tplnth;\n                            if (!empty($rowtpl)) {\n                                break;\n                            }\n                        }\n                    }\n                }\n            }\n\n            if ($count == 1 && isset($tpl_oneresult)) {\n                $rowtpl = $tpl_oneresult;\n            }\n\n            $fields = array_merge($fields, $properties);\n\n            if (!empty($rowtpl)) {\n                $template = $migx->getTemplate($tpl, $template);\n                $fields[''_tpl''] = $template[$tpl];\n            } else {\n                $rowtpl = $tpl;\n\n            }\n            $template = $migx->getTemplate($rowtpl, $template);\n\n\n            if ($template[$rowtpl]) {\n                $chunk = $modx->newObject(''modChunk'');\n                $chunk->setCacheable(false);\n                $chunk->setContent($template[$rowtpl]);\n\n\n                if (!empty($placeholdersKeyField) && isset($fields[$placeholdersKeyField])) {\n                    $output[$fields[$placeholdersKeyField]] = $chunk->process($fields);\n                } else {\n                    $output[] = $chunk->process($fields);\n                }\n            } else {\n                if (!empty($placeholdersKeyField)) {\n                    $output[$fields[$placeholdersKeyField]] = ''<pre>'' . print_r($fields, 1) . ''</pre>'';\n                } else {\n                    $output[] = ''<pre>'' . print_r($fields, 1) . ''</pre>'';\n                }\n            }\n        }\n\n\n    }\n}\n\nif (count($summaries) > 0) {\n    $modx->toPlaceholders($summaries);\n}\n\n\nif ($toJsonPlaceholder) {\n    $modx->setPlaceholder($toJsonPlaceholder, $modx->toJson($output));\n    return '''';\n}\n\nif (!empty($toSeparatePlaceholders)) {\n    $modx->toPlaceholders($output, $toSeparatePlaceholders);\n    return '''';\n}\n/*\nif (!empty($outerTpl))\n$o = parseTpl($outerTpl, array(''output''=>implode($outputSeparator, $output)));\nelse \n*/\n\nif ($count > 0 && $splits > 0) {\n    $size = ceil($count / $splits);\n    $chunks = array_chunk($output, $size);\n    $output = array();\n    foreach ($chunks as $chunk) {\n        $o = implode($outputSeparator, $chunk);\n        $output[] = $modx->getChunk($splitTpl, array(''output'' => $o));\n    }\n    $outputSeparator = $splitSeparator;\n}\n\nif (is_array($output)) {\n    $o = implode($outputSeparator, $output);\n} else {\n    $o = $output;\n}\n\nif (!empty($o) && !empty($wrapperTpl)) {\n    $template = $migx->getTemplate($wrapperTpl);\n    if ($template[$wrapperTpl]) {\n        $chunk = $modx->newObject(''modChunk'');\n        $chunk->setCacheable(false);\n        $chunk->setContent($template[$wrapperTpl]);\n        $properties[''output''] = $o;\n        $o = $chunk->process($properties);\n    }\n}\n\nif (!empty($toPlaceholder)) {\n    $modx->setPlaceholder($toPlaceholder, $o);\n    return '''';\n}\n\nreturn $o;', 0, 'a:0:{}', '', 0, ''),
(24, 0, 0, 'migxGetRelations', '', 0, 18, 0, '$id = $modx->getOption(''id'', $scriptProperties, $modx->resource->get(''id''));\n$toPlaceholder = $modx->getOption(''toPlaceholder'', $scriptProperties, '''');\n$element = $modx->getOption(''element'', $scriptProperties, ''getResources'');\n$outputSeparator = $modx->getOption(''outputSeparator'', $scriptProperties, '','');\n$sourceWhere = $modx->getOption(''sourceWhere'', $scriptProperties, '''');\n$ignoreRelationIfEmpty = $modx->getOption(''ignoreRelationIfEmpty'', $scriptProperties, false);\n$inheritFromParents = $modx->getOption(''inheritFromParents'', $scriptProperties, false);\n$parentIDs = $inheritFromParents ? array_merge(array($id), $modx->getParentIds($id)) : array($id);\n\n$packageName = ''resourcerelations'';\n\n$packagepath = $modx->getOption(''core_path'') . ''components/'' . $packageName . ''/'';\n$modelpath = $packagepath . ''model/'';\n\n$modx->addPackage($packageName, $modelpath, $prefix);\n$classname = ''rrResourceRelation'';\n$output = '''';\n\nforeach ($parentIDs as $id) {\n    if (!empty($id)) {\n        $output = '''';\n                \n        $c = $modx->newQuery($classname, array(''target_id'' => $id, ''published'' => ''1''));\n        $c->select($modx->getSelectColumns($classname, $classname));\n\n        if (!empty($sourceWhere)) {\n            $sourceWhere_ar = $modx->fromJson($sourceWhere);\n            if (is_array($sourceWhere_ar)) {\n                $where = array();\n                foreach ($sourceWhere_ar as $key => $value) {\n                    $where[''Source.'' . $key] = $value;\n                }\n                $joinclass = ''modResource'';\n                $joinalias = ''Source'';\n                $selectfields = ''id'';\n                $selectfields = !empty($selectfields) ? explode('','', $selectfields) : null;\n                $c->leftjoin($joinclass, $joinalias);\n                $c->select($modx->getSelectColumns($joinclass, $joinalias, $joinalias . ''_'', $selectfields));\n                $c->where($where);\n            }\n        }\n\n        //$c->prepare(); echo $c->toSql();\n        if ($c->prepare() && $c->stmt->execute()) {\n            $collection = $c->stmt->fetchAll(PDO::FETCH_ASSOC);\n        }\n        \n        foreach ($collection as $row) {\n            $ids[] = $row[''source_id''];\n        }\n        $output = implode($outputSeparator, $ids);\n    }\n    if (!empty($output)){\n        break;\n    }\n}\n\n\nif (!empty($element)) {\n    if (empty($output) && $ignoreRelationIfEmpty) {\n        return $modx->runSnippet($element, $scriptProperties);\n    } else {\n        $scriptProperties[''resources''] = $output;\n        $scriptProperties[''parents''] = ''9999999'';\n        return $modx->runSnippet($element, $scriptProperties);\n    }\n\n\n}\n\nif (!empty($toPlaceholder)) {\n    $modx->setPlaceholder($toPlaceholder, $output);\n    return '''';\n}\n\nreturn $output;', 0, NULL, '', 0, ''),
(25, 0, 0, 'migx', '', 0, 18, 0, '$tvname = $modx->getOption(''tvname'', $scriptProperties, '''');\n$tpl = $modx->getOption(''tpl'', $scriptProperties, '''');\n$limit = $modx->getOption(''limit'', $scriptProperties, ''0'');\n$offset = $modx->getOption(''offset'', $scriptProperties, 0);\n$totalVar = $modx->getOption(''totalVar'', $scriptProperties, ''total'');\n$randomize = $modx->getOption(''randomize'', $scriptProperties, false);\n$preselectLimit = $modx->getOption(''preselectLimit'', $scriptProperties, 0); // when random preselect important images\n$where = $modx->getOption(''where'', $scriptProperties, '''');\n$where = !empty($where) ? $modx->fromJSON($where) : array();\n$sortConfig = $modx->getOption(''sortConfig'', $scriptProperties, '''');\n$sortConfig = !empty($sortConfig) ? $modx->fromJSON($sortConfig) : array();\n$configs = $modx->getOption(''configs'', $scriptProperties, '''');\n$configs = !empty($configs) ? explode('','',$configs):array();\n$toSeparatePlaceholders = $modx->getOption(''toSeparatePlaceholders'', $scriptProperties, false);\n$toPlaceholder = $modx->getOption(''toPlaceholder'', $scriptProperties, false);\n$outputSeparator = $modx->getOption(''outputSeparator'', $scriptProperties, '''');\n//$placeholdersKeyField = $modx->getOption(''placeholdersKeyField'', $scriptProperties, ''MIGX_id'');\n$placeholdersKeyField = $modx->getOption(''placeholdersKeyField'', $scriptProperties, ''id'');\n$toJsonPlaceholder = $modx->getOption(''toJsonPlaceholder'', $scriptProperties, false);\n$jsonVarKey = $modx->getOption(''jsonVarKey'', $scriptProperties, ''migx_outputvalue'');\n$outputvalue = $modx->getOption(''value'', $scriptProperties, '''');\n$outputvalue = isset($_REQUEST[$jsonVarKey]) ? $_REQUEST[$jsonVarKey] : $outputvalue;\n$docidVarKey = $modx->getOption(''docidVarKey'', $scriptProperties, ''migx_docid'');\n$docid = $modx->getOption(''docid'', $scriptProperties, (isset($modx->resource) ? $modx->resource->get(''id'') : 1));\n$docid = isset($_REQUEST[$docidVarKey]) ? $_REQUEST[$docidVarKey] : $docid;\n$processTVs = $modx->getOption(''processTVs'', $scriptProperties, ''1'');\n\n$base_path = $modx->getOption(''base_path'', null, MODX_BASE_PATH);\n$base_url = $modx->getOption(''base_url'', null, MODX_BASE_URL);\n\n$migx = $modx->getService(''migx'', ''Migx'', $modx->getOption(''migx.core_path'', null, $modx->getOption(''core_path'') . ''components/migx/'') . ''model/migx/'', $scriptProperties);\nif (!($migx instanceof Migx))\n    return '''';\n//$modx->migx = &$migx;\n$defaultcontext = ''web'';\n$migx->working_context = isset($modx->resource) ? $modx->resource->get(''context_key'') : $defaultcontext;\n\nif (!empty($tvname))\n{\n    if ($tv = $modx->getObject(''modTemplateVar'', array(''name'' => $tvname)))\n    {\n\n        /*\n        *   get inputProperties\n        */\n\n\n        $properties = $tv->get(''input_properties'');\n        $properties = isset($properties[''configs'']) ? $properties : $tv->getProperties();\n        $cfgs = $modx->getOption(''configs'',$properties,'''');\n        if (!empty($cfgs)){\n            $cfgs = explode('','',$cfgs);\n            $configs = array_merge($configs,$cfgs);\n           \n        }\n        \n    }\n}\n\n\n\n//$migx->config[''configs''] = implode('','',$configs);\n$migx->loadConfigs(false,true,array(''configs''=>implode('','',$configs)));\n$migx->customconfigs = array_merge($migx->customconfigs,$scriptProperties);\n\n\n\n// get tabs from file or migx-config-table\n$formtabs = $migx->getTabs();\nif (empty($formtabs))\n{\n    //try to get formtabs and its fields from properties\n    $formtabs = $modx->fromJSON($properties[''formtabs'']);\n}\n\nif ($jsonVarKey == ''migx_outputvalue'' && !empty($properties[''jsonvarkey'']))\n{\n    $jsonVarKey = $properties[''jsonvarkey''];\n    $outputvalue = isset($_REQUEST[$jsonVarKey]) ? $_REQUEST[$jsonVarKey] : $outputvalue;\n}\n\n$outputvalue = $tv && empty($outputvalue) ? $tv->renderOutput($docid) : $outputvalue;\n/*\n*   get inputTvs \n*/\n$inputTvs = array();\nif (is_array($formtabs))\n{\n\n    //multiple different Forms\n    // Note: use same field-names and inputTVs in all forms\n    $inputTvs = $migx->extractInputTvs($formtabs);\n}\n\nif ($tv)\n{\n    $migx->source = $tv->getSource($migx->working_context, false);\n}\n\n//$task = $modx->migx->getTask();\n$filename = ''getlist.php'';\n$processorspath = $migx->config[''processorsPath''] . ''mgr/'';\n$filenames = array();\n$scriptProperties[''start''] = $modx->getOption(''offset'', $scriptProperties, 0);\nif ($processor_file = $migx->findProcessor($processorspath, $filename, $filenames))\n{\n    include ($processor_file);\n    //todo: add getlist-processor for default-MIGX-TV\n}\n\n$items = isset($rows) && is_array($rows) ? $rows : array();\n$modx->setPlaceholder($totalVar, isset($count) ? $count : 0);\n\n$properties = array();\nforeach ($scriptProperties as $property => $value)\n{\n    $properties[''property.'' . $property] = $value;\n}\n\n$idx = 0;\n$output = array();\nforeach ($items as $key => $item)\n{\n\n    $fields = array();\n    foreach ($item as $field => $value)\n    {\n        $value = is_array($value) ? implode(''||'', $value) : $value; //handle arrays (checkboxes, multiselects)\n        if ($processTVs && isset($inputTvs[$field]))\n        {\n            if ($tv = $modx->getObject(''modTemplateVar'', array(''name'' => $inputTvs[$field][''inputTV''])))\n            {\n\n            } else\n            {\n                $tv = $modx->newObject(''modTemplateVar'');\n                $tv->set(''type'', $inputTvs[$field][''inputTVtype'']);\n            }\n            $inputTV = $inputTvs[$field];\n\n            $mTypes = $modx->getOption(''manipulatable_url_tv_output_types'', null, ''image,file'');\n            //don''t manipulate any urls here\n            $modx->setOption(''manipulatable_url_tv_output_types'', '''');\n            $tv->set(''default_text'', $value);\n            $value = $tv->renderOutput($docid);\n            //set option back\n            $modx->setOption(''manipulatable_url_tv_output_types'', $mTypes);\n            //now manipulate urls\n            if ($mediasource = $migx->getFieldSource($inputTV, $tv))\n            {\n                $mTypes = explode('','', $mTypes);\n                if (!empty($value) && in_array($tv->get(''type''), $mTypes))\n                {\n                    //$value = $mediasource->prepareOutputUrl($value);\n                    $value = str_replace(''/./'', ''/'', $mediasource->prepareOutputUrl($value));\n                }\n            }\n\n        }\n        $fields[$field] = $value;\n\n    }\n    if ($toJsonPlaceholder)\n    {\n        $output[] = $fields;\n    } else\n    {\n        $fields[''_alt''] = $idx % 2;\n        $idx++;\n        $fields[''_first''] = $idx == 1 ? true : '''';\n        $fields[''_last''] = $idx == $limit ? true : '''';\n        $fields[''idx''] = $idx;\n        $rowtpl = $tpl;\n        //get changing tpls from field\n        if (substr($tpl, 0, 7) == "@FIELD:")\n        {\n            $tplField = substr($tpl, 7);\n            $rowtpl = $fields[$tplField];\n        }\n\n        if (!isset($template[$rowtpl]))\n        {\n            if (substr($rowtpl, 0, 6) == "@FILE:")\n            {\n                $template[$rowtpl] = file_get_contents($modx->config[''base_path''] . substr($rowtpl, 6));\n            } elseif (substr($rowtpl, 0, 6) == "@CODE:")\n            {\n                $template[$rowtpl] = substr($tpl, 6);\n            } elseif ($chunk = $modx->getObject(''modChunk'', array(''name'' => $rowtpl), true))\n            {\n                $template[$rowtpl] = $chunk->getContent();\n            } else\n            {\n                $template[$rowtpl] = false;\n            }\n        }\n\n        $fields = array_merge($fields, $properties);\n\n        if ($template[$rowtpl])\n        {\n            $chunk = $modx->newObject(''modChunk'');\n            $chunk->setCacheable(false);\n            $chunk->setContent($template[$rowtpl]);\n            if (!empty($placeholdersKeyField) && isset($fields[$placeholdersKeyField]))\n            {\n                $output[$fields[$placeholdersKeyField]] = $chunk->process($fields);\n            } else\n            {\n                $output[] = $chunk->process($fields);\n            }\n        } else\n        {\n            if (!empty($placeholdersKeyField))\n            {\n                $output[$fields[$placeholdersKeyField]] = ''<pre>'' . print_r($fields, 1) . ''</pre>'';\n            } else\n            {\n                $output[] = ''<pre>'' . print_r($fields, 1) . ''</pre>'';\n            }\n        }\n    }\n\n\n}\n\n\nif ($toJsonPlaceholder)\n{\n    $modx->setPlaceholder($toJsonPlaceholder, $modx->toJson($output));\n    return '''';\n}\n\nif (!empty($toSeparatePlaceholders))\n{\n    $modx->toPlaceholders($output, $toSeparatePlaceholders);\n    return '''';\n}\n/*\nif (!empty($outerTpl))\n$o = parseTpl($outerTpl, array(''output''=>implode($outputSeparator, $output)));\nelse \n*/\nif (is_array($output))\n{\n    $o = implode($outputSeparator, $output);\n} else\n{\n    $o = $output;\n}\n\nif (!empty($toPlaceholder))\n{\n    $modx->setPlaceholder($toPlaceholder, $o);\n    return '''';\n}\n\nreturn $o;', 0, NULL, '', 0, ''),
(26, 0, 0, 'migxLoopCollection', '', 0, 18, 0, '/*\ngetXpdoInstanceAndAddPackage - properties\n\n$prefix\n$usecustomprefix\n$packageName\n\n\nprepareQuery - properties:\n\n$limit\n$offset\n$totalVar\n$where\n$queries\n$sortConfig\n$groupby\n$joins\n$selectfields\n$classname\n$debug\n\nrenderOutput - properties:\n\n$tpl\n$wrapperTpl\n$toSeparatePlaceholders\n$toPlaceholder\n$outputSeparator\n$placeholdersKeyField\n$toJsonPlaceholder\n$jsonVarKey\n$addfields\n\n*/\n\n\n$migx = $modx->getService(''migx'', ''Migx'', $modx->getOption(''migx.core_path'', null, $modx->getOption(''core_path'') . ''components/migx/'') . ''model/migx/'', $scriptProperties);\nif (!($migx instanceof Migx))\n    return '''';\n//$modx->migx = &$migx;\n\n$xpdo = $migx->getXpdoInstanceAndAddPackage($scriptProperties);\n\n$defaultcontext = ''web'';\n$migx->working_context = isset($modx->resource) ? $modx->resource->get(''context_key'') : $defaultcontext;\n\n$c = $migx->prepareQuery($xpdo,$scriptProperties);\n$rows = $migx->getCollection($c);\n\n$output = $migx->renderOutput($rows,$scriptProperties);\n\nreturn $output;', 0, NULL, '', 0, ''),
(27, 0, 0, 'migxResourceMediaPath', '', 0, 18, 0, '/**\n * @name migxResourceMediaPath\n * @description Dynamically calculates the upload path for a given resource\n * \n * This Snippet is meant to dynamically calculate your baseBath attribute\n * for custom Media Sources.  This is useful if you wish to shepard uploaded\n * images to a folder dedicated to a given resource.  E.g. page 123 would \n * have its own images that page 456 could not reference.\n *\n * USAGE:\n * [[migxResourceMediaPath? &pathTpl=`assets/businesses/{id}/`]]\n * [[migxResourceMediaPath? &pathTpl=`assets/test/{breadcrumb}`]]\n * [[migxResourceMediaPath? &pathTpl=`assets/test/{breadcrumb}` &breadcrumbdepth=`2`]]\n *\n * PARAMETERS\n * &pathTpl string formatting string specifying the file path. \n *		Relative to MODX base_path\n *		Available placeholders: {id}, {pagetitle}, {parent}\n * &docid (optional) integer page id\n * &createfolder (optional) boolean whether or not to create\n */\n$pathTpl = $modx->getOption(''pathTpl'', $scriptProperties, '''');\n$docid = $modx->getOption(''docid'', $scriptProperties, '''');\n$createfolder = $modx->getOption(''createFolder'', $scriptProperties, false);\n$path = '''';\n$createpath = false;\n\nif (empty($pathTpl)) {\n    $modx->log(MODX_LOG_LEVEL_ERROR, ''[migxResourceMediaPath]: pathTpl not specified.'');\n    return;\n}\n\nif (empty($docid) && $modx->getPlaceholder(''docid'')) {\n    // placeholder was set by some script\n    // warning: the parser may not render placeholders, e.g. &docid=`[[*parent]]` may fail\n    $docid = $modx->getPlaceholder(''docid'');\n}\nif (empty($docid)) {\n\n    //on frontend\n    if (is_object($modx->resource)) {\n        $docid = $modx->resource->get(''id'');\n    }\n    //on backend\n    else {\n        $createpath = $createfolder;\n        // We do this to read the &id param from an Ajax request\n        $parsedUrl = parse_url($_SERVER[''HTTP_REFERER'']);\n        parse_str($parsedUrl[''query''], $parsedQuery);\n\n        if (isset($parsedQuery[''amp;id''])) {\n            $docid = (int)$parsedQuery[''amp;id''];\n        } elseif (isset($parsedQuery[''id''])) {\n            $docid = (int)$parsedQuery[''id''];\n        }\n    }\n}\n\nif (empty($docid)) {\n    $modx->log(MODX_LOG_LEVEL_ERROR, ''[migxResourceMediaPath]: docid could not be determined.'');\n    return;\n}\n\nif ($resource = $modx->getObject(''modResource'', $docid)) {\n    $path = $pathTpl;\n    $ultimateParent = '''';\n    if (strstr($path, ''{breadcrumb}'') || strstr($path, ''{ultimateparent}'')) {\n        $parentids = $modx->getParentIds($docid);\n        $breadcrumbdepth = $modx->getOption(''breadcrumbdepth'', $scriptProperties, count($parentids));\n        $breadcrumbdepth = $breadcrumbdepth > count($parentids) ? count($parentids) : $breadcrumbdepth;\n        if (count($parentids) > 1) {\n            $parentids = array_reverse($parentids);\n            $parentids[] = $docid;\n            $ultimateParent = $parentids[1];\n        } else {\n            $ultimateParent = $docid;\n            $parentids = array();\n            $parentids[] = $docid;\n        }\n    }\n\n    if (strstr($path, ''{breadcrumb}'')) {\n        $breadcrumbpath = '''';\n        for ($i = 1; $i <= $breadcrumbdepth; $i++) {\n            $breadcrumbpath .= $parentids[$i] . ''/'';\n        }\n        $path = str_replace(''{breadcrumb}'', $breadcrumbpath, $path);\n\n    } else {\n        $path = str_replace(''{id}'', $docid, $path);\n        $path = str_replace(''{pagetitle}'', $resource->get(''pagetitle''), $path);\n        $path = str_replace(''{alias}'', $resource->get(''alias''), $path);\n        $path = str_replace(''{parent}'', $resource->get(''parent''), $path);\n        $path = str_replace(''{ultimateparent}'', $ultimateParent, $path);\n        if ($template = $resource->getOne(''Template'')) {\n            $path = str_replace(''{templatename}'', $template->get(''templatename''), $path);\n        }\n        if ($user = $modx->user) {\n            $path = str_replace(''{username}'', $modx->user->get(''username''), $path);\n        }\n    }\n\n    $fullpath = $modx->getOption(''base_path'') . $path;\n    \n    if ($createpath && !file_exists($fullpath)) {\n        $permissions = $modx->getOption(''new_folder_permissions'', null, ''0755'', true);\n        if (!@mkdir($fullpath, $permissions, true)) {\n            $modx->log(MODX_LOG_LEVEL_ERROR, sprintf(''[migxResourceMediaPath]: could not create directory %s).'', $fullpath));\n\n        }\n    }\n\n    return $path;\n} else {\n    $modx->log(MODX_LOG_LEVEL_ERROR, sprintf(''[migxResourceMediaPath]: resource not found (page id %s).'', $docid));\n    return;\n}', 0, NULL, '', 0, ''),
(28, 0, 0, 'migxImageUpload', '', 0, 18, 0, 'return include $modx->getOption(''core_path'').''components/migx/model/imageupload/imageupload.php'';', 0, NULL, '', 0, ''),
(29, 0, 0, 'migxChunklistToJson', '', 0, 18, 0, '$category = $modx->getOption(''category'', $scriptProperties, '''');\n$format = $modx->getOption(''format'', $scriptProperties, ''json'');\n\n$classname = ''modChunk'';\n$rows = array();\n$output = '''';\n\n$c = $modx->newQuery($classname);\n$c->select($modx->getSelectColumns($classname, $classname, '''', array(''id'', ''name'')));\n$c->sortby(''name'');\n\nif (!empty($category)) {\n    $c->where(array(''category'' => $category));\n}\n//$c->prepare();echo $c->toSql();\nif ($collection = $modx->getCollection($classname, $c)) {\n    $i = 0;\n\n    switch ($format) {\n        case ''json'':\n            foreach ($collection as $object) {\n                $row[''MIGX_id''] = (string )$i;\n                $row[''name''] = $object->get(''name'');\n                $row[''selected''] = ''0'';\n                $rows[] = $row;\n                $i++;\n            }\n            $output = $modx->toJson($rows);\n            break;\n        \n        case ''optionlist'':\n            foreach ($collection as $object) {\n                $rows[] = $object->get(''name'');\n                $i++;\n            }\n            $output = implode(''||'',$rows);      \n        break;\n            \n    }\n\n\n}\n\nreturn $output;', 0, NULL, '', 0, ''),
(30, 0, 0, 'migxSwitchDetailChunk', '', 0, 18, 0, '//[[migxSwitchDetailChunk? &detailChunk=`detailChunk` &listingChunk=`listingChunk`]]\n\n\n$properties[''migx_id''] = $modx->getOption(''migx_id'',$_GET,'''');\n\nif (!empty($properties[''migx_id''])){\n    $output = $modx->getChunk($detailChunk,$properties);\n}\nelse{\n    $output = $modx->getChunk($listingChunk);\n}\n\nreturn $output;', 0, NULL, '', 0, ''),
(31, 0, 0, 'getSwitchColumnCol', '', 0, 18, 0, '$scriptProperties = $_REQUEST;\n$col = '''';\n// special actions, for example the showSelector - action\n$tempParams = $modx->getOption(''tempParams'', $scriptProperties, '''');\n\nif (!empty($tempParams)) {\n    $tempParams = $modx->fromJson($tempParams);\n    $col = $modx->getOption(''col'', $tempParams, '''');\n}\n\nreturn $col;', 0, NULL, '', 0, ''),
(32, 0, 0, 'getDayliMIGXrecord', '', 0, 18, 0, '/**\n * getDayliMIGXrecord\n *\n * Copyright 2009-2011 by Bruno Perner <b.perner@gmx.de>\n *\n * getDayliMIGXrecord is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * getDayliMIGXrecord is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * getDayliMIGXrecord; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package migx\n */\n/**\n * getDayliMIGXrecord\n *\n * display Items from outputvalue of TV with custom-TV-input-type MIGX or from other JSON-string for MODx Revolution \n *\n * @version 1.0\n * @author Bruno Perner <b.perner@gmx.de>\n * @copyright Copyright &copy; 2012\n * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU General Public License\n * version 2 or (at your option) any later version.\n * @package migx\n */\n\n/*example: [[!getDayliMIGXrecord? &tvname=`myTV`&tpl=`@CODE:<img src="[[+image]]"/>` &randomize=`1`]]*/\n/* get default properties */\n\n\n$tvname = $modx->getOption(''tvname'', $scriptProperties, '''');\n$tpl = $modx->getOption(''tpl'', $scriptProperties, '''');\n$randomize = $modx->getOption(''randomize'', $scriptProperties, false);\n$where = $modx->getOption(''where'', $scriptProperties, '''');\n$where = !empty($where) ? $modx->fromJSON($where) : array();\n$sort = $modx->getOption(''sort'', $scriptProperties, '''');\n$sort = !empty($sort) ? $modx->fromJSON($sort) : array();\n$toPlaceholder = $modx->getOption(''toPlaceholder'', $scriptProperties, false);\n$docid = $modx->getOption(''docid'', $scriptProperties, (isset($modx->resource) ? $modx->resource->get(''id'') : 1));\n$processTVs = $modx->getOption(''processTVs'', $scriptProperties, ''1'');\n\n$migx = $modx->getService(''migx'', ''Migx'', $modx->getOption(''migx.core_path'', null, $modx->getOption(''core_path'') . ''components/migx/'') . ''model/migx/'', $scriptProperties);\nif (!($migx instanceof Migx))\n    return '''';\n$migx->working_context = $modx->resource->get(''context_key'');\n\nif (!empty($tvname)) {\n    if ($tv = $modx->getObject(''modTemplateVar'', array(''name'' => $tvname))) {\n\n        /*\n        *   get inputProperties\n        */\n\n\n        $properties = $tv->get(''input_properties'');\n        $properties = isset($properties[''formtabs'']) ? $properties : $tv->getProperties();\n\n        $migx->config[''configs''] = $properties[''configs''];\n        $migx->loadConfigs();\n        // get tabs from file or migx-config-table\n        $formtabs = $migx->getTabs();\n        if (empty($formtabs)) {\n            //try to get formtabs and its fields from properties\n            $formtabs = $modx->fromJSON($properties[''formtabs'']);\n        }\n\n        //$tv->setCacheable(false);\n        //$outputvalue = $tv->renderOutput($docid);\n        \n        $tvresource = $modx->getObject(''modTemplateVarResource'', array(\n            ''tmplvarid'' => $tv->get(''id''),\n            ''contentid'' => $docid,\n            ));\n\n\n        $outputvalue = $tvresource->get(''value'');\n        \n        /*\n        *   get inputTvs \n        */\n        $inputTvs = array();\n        if (is_array($formtabs)) {\n\n            //multiple different Forms\n            // Note: use same field-names and inputTVs in all forms\n            $inputTvs = $migx->extractInputTvs($formtabs);\n        }\n        $migx->source = $tv->getSource($migx->working_context, false);\n\n        if (empty($outputvalue)) {\n            return '''';\n        }\n\n        $items = $modx->fromJSON($outputvalue);\n\n\n        //is there an active item for the current date?\n        $activedate = $modx->getOption(''activedate'', $scriptProperties, strftime(''%Y/%m/%d''));\n        //$activedate = $modx->getOption(''activedate'', $_GET, strftime(''%Y/%m/%d''));\n        $activewhere = array();\n        $activewhere[''activedate''] = $activedate;\n        $activewhere[''activated''] = ''1'';\n        $activeitems = $migx->filterItems($activewhere, $items);\n\n        if (count($activeitems) == 0) {\n\n            $activeitems = array();\n            // where filter\n            if (is_array($where) && count($where) > 0) {\n                $items = $migx->filterItems($where, $items);\n            }\n\n            $tempitems = array();\n            $count = count($items);\n            $emptycount = 0;\n            $latestdate = $activedate;\n            $nextdate = strtotime($latestdate);\n            foreach ($items as $item) {\n                //empty all dates and active-states which are older than today\n                if (!empty($item[''activedate'']) && $item[''activedate''] < $activedate) {\n                    $item[''activated''] = ''0'';\n                    $item[''activedate''] = '''';\n                }\n                if (empty($item[''activedate''])) {\n                    $emptycount++;\n                }\n                if ($item[''activedate''] > $latestdate) {\n                    $latestdate = $item[''activedate''];\n                    $nextdate = strtotime($latestdate) + (24 * 60 * 60);\n                }\n                if ($item[''activedate''] == $activedate) {\n                    $item[''activated''] = ''1'';\n                    $activeitems[] = $item;\n                }\n                $tempitems[] = $item;\n            }\n\n            //echo ''<pre>'' . print_r($tempitems, 1) . ''</pre>'';\n\n            $items = $tempitems;\n\n\n            //are there more than half of all items with empty activedates\n\n            if ($emptycount >= $count / 2) {\n\n                // sort items\n                if (is_array($sort) && count($sort) > 0) {\n                    $items = $migx->sortDbResult($items, $sort);\n                }\n                if (count($items) > 0) {\n                    //shuffle items\n                    if ($randomize) {\n                        shuffle($items);\n                    }\n                }\n\n                $tempitems = array();\n                foreach ($items as $item) {\n                    if (empty($item[''activedate''])) {\n                        $item[''activedate''] = strftime(''%Y/%m/%d'', $nextdate);\n                        $nextdate = $nextdate + (24 * 60 * 60);\n                        if ($item[''activedate''] == $activedate) {\n                            $item[''activated''] = ''1'';\n                            $activeitems[] = $item;\n                        }\n                    }\n\n                    $tempitems[] = $item;\n                }\n\n                $items = $tempitems;\n            }\n\n            //$resource = $modx->getObject(''modResource'', $docid);\n            //echo $modx->toJson($items);\n            $sort = ''[{"sortby":"activedate"}]'';\n            $items = $migx->sortDbResult($items, $modx->fromJson($sort));\n\n            //echo ''<pre>'' . print_r($items, 1) . ''</pre>'';\n\n            $tv->setValue($docid, $modx->toJson($items));\n            $tv->save();\n\n        }\n    }\n\n}\n\n\n$properties = array();\nforeach ($scriptProperties as $property => $value) {\n    $properties[''property.'' . $property] = $value;\n}\n\n$output = '''';\n\nforeach ($activeitems as $key => $item) {\n\n    $fields = array();\n    foreach ($item as $field => $value) {\n        $value = is_array($value) ? implode(''||'', $value) : $value; //handle arrays (checkboxes, multiselects)\n        if ($processTVs && isset($inputTvs[$field])) {\n            if ($tv = $modx->getObject(''modTemplateVar'', array(''name'' => $inputTvs[$field][''inputTV'']))) {\n\n            } else {\n                $tv = $modx->newObject(''modTemplateVar'');\n                $tv->set(''type'', $inputTvs[$field][''inputTVtype'']);\n            }\n            $inputTV = $inputTvs[$field];\n\n            $mTypes = $modx->getOption(''manipulatable_url_tv_output_types'', null, ''image,file'');\n            //don''t manipulate any urls here\n            $modx->setOption(''manipulatable_url_tv_output_types'', '''');\n            $tv->set(''default_text'', $value);\n            $value = $tv->renderOutput($docid);\n            //set option back\n            $modx->setOption(''manipulatable_url_tv_output_types'', $mTypes);\n            //now manipulate urls\n            if ($mediasource = $migx->getFieldSource($inputTV, $tv)) {\n                $mTypes = explode('','', $mTypes);\n                if (!empty($value) && in_array($tv->get(''type''), $mTypes)) {\n                    //$value = $mediasource->prepareOutputUrl($value);\n                    $value = str_replace(''/./'', ''/'', $mediasource->prepareOutputUrl($value));\n                }\n            }\n\n        }\n        $fields[$field] = $value;\n\n    }\n\n    $rowtpl = $tpl;\n    //get changing tpls from field\n    if (substr($tpl, 0, 7) == "@FIELD:") {\n        $tplField = substr($tpl, 7);\n        $rowtpl = $fields[$tplField];\n    }\n\n    if (!isset($template[$rowtpl])) {\n        if (substr($rowtpl, 0, 6) == "@FILE:") {\n            $template[$rowtpl] = file_get_contents($modx->config[''base_path''] . substr($rowtpl, 6));\n        } elseif (substr($rowtpl, 0, 6) == "@CODE:") {\n            $template[$rowtpl] = substr($tpl, 6);\n        } elseif ($chunk = $modx->getObject(''modChunk'', array(''name'' => $rowtpl), true)) {\n            $template[$rowtpl] = $chunk->getContent();\n        } else {\n            $template[$rowtpl] = false;\n        }\n    }\n\n    $fields = array_merge($fields, $properties);\n\n    if ($template[$rowtpl]) {\n        $chunk = $modx->newObject(''modChunk'');\n        $chunk->setCacheable(false);\n        $chunk->setContent($template[$rowtpl]);\n        $output .= $chunk->process($fields);\n\n    } else {\n        $output .= ''<pre>'' . print_r($fields, 1) . ''</pre>'';\n\n    }\n\n\n}\n\n\nif (!empty($toPlaceholder)) {\n    $modx->setPlaceholder($toPlaceholder, $output);\n    return '''';\n}\n\nreturn $output;', 0, NULL, '', 0, ''),
(33, 0, 0, 'filterbytag', '', 0, 18, 0, 'if (!is_array($subject)) {\n    $subject = explode('','',str_replace(array(''||'','' ''),array('','',''''),$subject));\n}\n\nreturn (in_array($operand,$subject));', 0, NULL, '', 0, ''),
(34, 0, 0, 'migxObjectMediaPath', '', 0, 18, 0, '$pathTpl = $modx->getOption(''pathTpl'', $scriptProperties, '''');\n$objectid = $modx->getOption(''objectid'', $scriptProperties, '''');\n$createfolder = $modx->getOption(''createFolder'', $scriptProperties, ''1'');\n$path = '''';\n$createpath = false;\nif (empty($objectid) && $modx->getPlaceholder(''objectid'')) {\n    // placeholder was set by some script on frontend for example\n    $objectid = $modx->getPlaceholder(''objectid'');\n}\nif (empty($objectid) && isset($_REQUEST[''object_id''])) {\n    $objectid = $_REQUEST[''object_id''];\n}\n\n\n\nif (empty($objectid)) {\n\n    //set Session - var in fields.php - processor\n    if (isset($_SESSION[''migxWorkingObjectid''])) {\n        $objectid = $_SESSION[''migxWorkingObjectid''];\n        $createpath = !empty($createfolder);\n    }\n\n}\n\n\n$path = str_replace(''{id}'', $objectid, $pathTpl);\n\n$fullpath = $modx->getOption(''base_path'') . $path;\n\nif ($createpath && !file_exists($fullpath)) {\n    mkdir($fullpath, 0755, true);\n}\n\nreturn $path;', 0, NULL, '', 0, '');
INSERT INTO `modx_site_snippets` (`id`, `source`, `property_preprocess`, `name`, `description`, `editor_type`, `category`, `cache_type`, `snippet`, `locked`, `properties`, `moduleguid`, `static`, `static_file`) VALUES
(35, 0, 0, 'exportMIGX2db', '', 0, 18, 0, '/**\n * exportMIGX2db\n *\n * Copyright 2014 by Bruno Perner <b.perner@gmx.de>\n * \n * Sponsored by Simon Wurster <info@wurster-medien.de>\n *\n * exportMIGX2db is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * exportMIGX2db is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * exportMIGX2db; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package migx\n */\n/**\n * exportMIGX2db\n *\n * export Items from outputvalue of TV with custom-TV-input-type MIGX or from other JSON-string to db-table \n *\n * @version 1.0\n * @author Bruno Perner <b.perner@gmx.de>\n * @copyright Copyright &copy; 2014\n * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU General Public License\n * version 2 or (at your option) any later version.\n * @package migx\n */\n\n/*\n[[!exportMIGX2db? \n&tvname=`references` \n&resources=`25` \n&packageName=`projekte`\n&classname=`Projekt` \n&migx_id_field=`migx_id` \n&renamed_fields=`{"Firmen-URL":"Firmen_url","Projekt-URL":"Projekt_URL","main-image":"main_image"}`\n]]\n*/\n\n\n$tvname = $modx->getOption(''tvname'', $scriptProperties, '''');\n$resources = $modx->getOption(''resources'', $scriptProperties, (isset($modx->resource) ? $modx->resource->get(''id'') : ''''));\n$resources = explode('','', $resources);\n$prefix = isset($scriptProperties[''prefix'']) ? $scriptProperties[''prefix''] : null;\n$packageName = $modx->getOption(''packageName'', $scriptProperties, '''');\n$classname = $modx->getOption(''classname'', $scriptProperties, '''');\n$value = $modx->getOption(''value'', $scriptProperties, '''');\n$migx_id_field = $modx->getOption(''migx_id_field'', $scriptProperties, '''');\n$pos_field = $modx->getOption(''pos_field'', $scriptProperties, '''');\n$renamed_fields = $modx->getOption(''renamed_fields'', $scriptProperties, '''');\n\n$packagepath = $modx->getOption(''core_path'') . ''components/'' . $packageName .\n    ''/'';\n$modelpath = $packagepath . ''model/'';\n\n$modx->addPackage($packageName, $modelpath, $prefix);\n$added = 0;\n$modified = 0;\n\nforeach ($resources as $docid) {\n    \n    $outputvalue = '''';\n    if (count($resources)==1){\n        $outputvalue = $value;    \n    }\n    \n    if (!empty($tvname)) {\n        if ($tv = $modx->getObject(''modTemplateVar'', array(''name'' => $tvname))) {\n\n            $outputvalue = empty($outputvalue) ? $tv->renderOutput($docid) : $outputvalue;\n        }\n    }\n\n    if (!empty($outputvalue)) {\n        $renamed = !empty($renamed_fields) ? $modx->fromJson($renamed_fields) : array();\n\n        $items = $modx->fromJSON($outputvalue);\n        $pos = 1;\n        $searchfields = array();\n        if (is_array($items)) {\n            foreach ($items as $fields) {\n                $search = array();\n                if (!empty($migx_id_field)) {\n                    $search[$migx_id_field] = $fields[''MIGX_id''];\n                }\n                if (!empty($resource_id_field)) {\n                    $search[$resource_id_field] = $docid;\n                }\n                if (!empty($migx_id_field) && $object = $modx->getObject($classname, $search)) {\n                    $mode = ''mod'';\n                } else {\n                    $object = $modx->newObject($classname);\n                    $object->fromArray($search);\n                    $mode = ''add'';\n                }\n                foreach ($fields as $field => $value) {\n                    $fieldname = array_key_exists($field, $renamed) ? $renamed[$field] : $field;\n                    $object->set($fieldname, $value);\n                }\n                if (!empty($pos_field)) {\n                    $object->set($pos_field,$pos) ;\n                }                \n                if ($object->save()) {\n                    if ($mode == ''add'') {\n                        $added++;\n                    } else {\n                        $modified++;\n                    }\n                }\n                $pos++;\n            }\n            \n        }\n    }\n}\n\n\nreturn $added . '' rows added to db, '' . $modified . '' existing rows actualized'';', 0, NULL, '', 0, ''),
(36, 0, 0, 'preparedatewhere', '', 0, 18, 0, '$name = $modx->getOption(''name'', $scriptProperties, '''');\n$date = $modx->getOption($name . ''_date'', $_REQUEST, '''');\n$dir = str_replace(''T'', '' '', $modx->getOption($name . ''_dir'', $_REQUEST, ''''));\n\nif (!empty($date) && !empty($dir) && $dir != ''all'') {\n    switch ($dir) {\n        case ''='':\n            $where = array(\n            ''enddate:>='' => strftime(''%Y-%m-%d 00:00:00'',strtotime($date)),\n            ''startdate:<='' => strftime(''%Y-%m-%d 23:59:59'',strtotime($date))\n            );\n            break;\n        case ''>='':\n            $where = array(\n            ''enddate:>='' => strftime(''%Y-%m-%d 00:00:00'',strtotime($date))\n            );\n            break;\n        case ''<='':\n            $where = array(\n            ''startdate:<='' => strftime(''%Y-%m-%d 23:59:59'',strtotime($date))\n            );            \n            break;\n\n    }\n\n    return $modx->toJson($where);\n}', 0, NULL, '', 0, ''),
(37, 0, 0, 'migxJsonToPlaceholders', '', 0, 18, 0, '$value = $modx->getOption(''value'',$scriptProperties,'''');\n$prefix = $modx->getOption(''prefix'',$scriptProperties,'''');\n\n//$modx->setPlaceholders($modx->fromJson($value),$prefix,'''',true);\n\n$values = $modx->fromJson($value);\nif (is_array($values)){\n    foreach ($values as $key => $value){\n        $value = $value == null ? '''' : $value;\n        $modx->setPlaceholder($prefix . $key, $value);\n    }\n}', 0, NULL, '', 0, ''),
(38, 0, 0, 'migxGetCollectionTree', '', 0, 18, 0, '/**\n * migxGetCollectionTree\n *\n * Copyright 2014 by Bruno Perner <b.perner@gmx.de>\n *\n * migxGetCollectionTree is free software; you can redistribute it and/or modify it\n * under the terms of the GNU General Public License as published by the Free\n * Software Foundation; either version 2 of the License, or (at your option) any\n * later version.\n *\n * migxGetCollectionTree is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n * A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License along with\n * migxGetCollectionTree; if not, write to the Free Software Foundation, Inc., 59 Temple Place,\n * Suite 330, Boston, MA 02111-1307 USA\n *\n * @package migx\n */\n/**\n * migxGetCollectionTree\n *\n *          display nested items from different objects. The tree-schema is defined by a json-property. \n *\n * @version 1.0.0\n * @author Bruno Perner <b.perner@gmx.de>\n * @copyright Copyright &copy; 2014\n * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU General Public License\n * version 2 or (at your option) any later version.\n * @package migx\n */\n\n$treeSchema = $modx->getOption(''treeSchema'', $scriptProperties, '''');\n$treeSchema = $modx->fromJson($treeSchema);\n\n$scriptProperties[''current''] = $modx->getOption(''current'', $scriptProperties, '''');\n$scriptProperties[''currentClassname''] = $modx->getOption(''currentClassname'', $scriptProperties, '''');\n$scriptProperties[''currentKeyField''] = $modx->getOption(''currentKeyField'', $scriptProperties, ''id'');\n$return = $modx->getOption(''return'', $scriptProperties, ''parsed''); //parsed,json,arrayprint\n\n/*\nExamples:\n\nGet Resource-Tree, 4 levels deep\n\n[[!migxGetCollectionTree?\n&current=`57`\n&currentClassname=`modResource`\n&treeSchema=`\n{\n"classname": "modResource",\n"debug": "1",\n"tpl": "mgctResourceTree",\n"wrapperTpl": "@CODE:<ul>[[+output]]</ul>",\n"selectfields": "id,pagetitle",\n"where": {\n"parent": "0",\n"published": "1",\n"deleted": "0"\n},\n"_branches": [{\n"alias": "children",\n"classname": "modResource",\n"local": "parent",\n"foreign": "id",\n"tpl": "mgctResourceTree",\n"debug": "1",\n"selectfields": "id,pagetitle,parent",\n"_branches": [{\n"alias": "children",\n"classname": "modResource",\n"local": "parent",\n"foreign": "id",\n"tpl": "mgctResourceTree",\n"debug": "1",\n"selectfields": "id,pagetitle,parent",\n"where": {\n"published": "1",\n"deleted": "0"\n},\n"_branches": [{\n"alias": "children",\n"classname": "modResource",\n"local": "parent",\n"foreign": "id",\n"tpl": "mgctResourceTree",\n"debug": "1",\n"selectfields": "id,pagetitle,parent",\n"where": {\n"published": "1",\n"deleted": "0"\n}\n}]\n}]\n}]\n}\n`]]\n\nthe chunk mgctResourceTree:\n<li class="[[+_activelabel]] [[+_currentlabel]]" ><a href="[[~[[+id]]]]">[[+pagetitle]]([[+id]])</a></li>\n[[+innercounts.children:gt=`0`:then=`\n<ul>[[+innerrows.children]]</ul>\n`:else=``]]\n\nget all Templates and its Resources:\n\n[[!migxGetCollectionTree?\n&treeSchema=`\n{\n"classname": "modTemplate",\n"debug": "1",\n"tpl": "@CODE:<h3>[[+templatename]]</h3><ul>[[+innerrows.resource]]</ul>",\n"selectfields": "id,templatename",\n"_branches": [{\n"alias": "resource",\n"classname": "modResource",\n"local": "template",\n"foreign": "id",\n"tpl": "@CODE:<li>[[+pagetitle]]([[+id]])</li>",\n"debug": "1",\n"selectfields": "id,pagetitle,template"\n}]\n}\n`]]\n*/\n\nif (!class_exists(''MigxGetCollectionTree'')) {\n    class MigxGetCollectionTree\n    {\n        function __construct(modX & $modx, array $config = array())\n        {\n            $this->modx = &$modx;\n            $this->config = $config;\n        }\n\n        function getBranch($branch, $foreigns = array(), $level = 1)\n        {\n\n            $rows = array();\n\n            if (count($foreigns) > 0) {\n                $modx = &$this->modx;\n\n                $local = $modx->getOption(''local'', $branch, '''');\n                $where = $modx->getOption(''where'', $branch, array());\n                $where = !empty($where) && !is_array($where) ? $modx->fromJSON($where) : $where;\n                $where[] = array($local . '':IN'' => $foreigns);\n\n                $branch[''where''] = $modx->toJson($where);\n\n                $level++;\n                /*\n                if ($levelFromCurrent > 0){\n                $levelFromCurrent++;    \n                }\n                */\n\n                $rows = $this->getRows($branch, $level);\n            }\n\n            return $rows;\n        }\n\n        function getRows($scriptProperties, $level)\n        {\n            $migx = &$this->migx;\n            $modx = &$this->modx;\n\n            $current = $modx->getOption(''current'', $this->config, '''');\n            $currentKeyField = $modx->getOption(''currentKeyField'', $this->config, ''id'');\n            $currentlabel = $modx->getOption(''currentlabel'', $this->config, ''current'');\n            $classname = $modx->getOption(''classname'', $scriptProperties, '''');\n            $currentClassname = !empty($this->config[''currentClassname'']) ? $this->config[''currentClassname''] : $classname;\n\n            $activelabel = $modx->getOption(''activelabel'', $this->config, ''active'');\n            $return = $modx->getOption(''return'', $this->config, ''parsed'');\n\n            $xpdo = $migx->getXpdoInstanceAndAddPackage($scriptProperties);\n            $c = $migx->prepareQuery($xpdo, $scriptProperties);\n            $rows = $migx->getCollection($c);\n\n            $branches = $modx->getOption(''_branches'', $scriptProperties, array());\n\n            $collectedSubrows = array();\n            foreach ($branches as $branch) {\n                $foreign = $modx->getOption(''foreign'', $branch, '''');\n                $local = $modx->getOption(''local'', $branch, '''');\n                $alias = $modx->getOption(''alias'', $branch, '''');\n                //$activeonly = $modx->getOption(''activeonly'', $branch, '''');\n                $foreigns = array();\n                foreach ($rows as $row) {\n                    $foreigns[] = $row[$foreign];\n                }\n\n                $subrows = $this->getBranch($branch, $foreigns, $level);\n                foreach ($subrows as $subrow) {\n\n                    $collectedSubrows[$subrow[$local]][] = $subrow;\n                    $subrow[''_active''] = $modx->getOption(''_active'', $subrow, ''0'');\n                    /*\n                    if (!empty($activeonly) && $subrow[''_active''] != ''1'') {\n                    $output = '''';\n                    } else {\n                    $collectedSubrows[$subrow[$local]][] = $subrow;\n                    }\n                    */\n                    if ($subrow[''_active''] == ''1'') {\n                        //echo ''active subrow:<pre>'' . print_r($subrow,1) . ''</pre>'';\n                        $activesubrow[$subrow[$local]] = true;\n                    }\n                    if ($subrow[''_current''] == ''1'') {\n                        //echo ''active subrow:<pre>'' . print_r($subrow,1) . ''</pre>'';\n                        $currentsubrow[$subrow[$local]] = true;\n                    }\n\n\n                }\n                //insert subrows\n                $temprows = $rows;\n                $rows = array();\n                foreach ($temprows as $row) {\n                    if (isset($collectedSubrows[$row[$foreign]])) {\n                        $row[''_active''] = ''0'';\n                        $row[''_currentparent''] = ''0'';\n                        if (isset($activesubrow[$row[$foreign]]) && $activesubrow[$row[$foreign]]) {\n                            $row[''_active''] = ''1'';\n                            //echo ''active row:<pre>'' . print_r($row,1) . ''</pre>'';\n                        }\n                        if (isset($currentsubrow[$row[$foreign]]) && $currentsubrow[$row[$foreign]]) {\n                            $row[''_currentparent''] = ''1'';\n                            //echo ''active row:<pre>'' . print_r($row,1) . ''</pre>'';\n                        }\n\n                        //render innerrows\n                        //$output = $migx->renderOutput($collectedSubrows[$row[$foreign]],$scriptProperties);\n                        //$output = $collectedSubrows[$row[$foreign]];\n\n                        $row[''innercounts.'' . $alias] = count($collectedSubrows[$row[$foreign]]);\n                        $row[''_scriptProperties''][$alias] = $branch;\n                        /*\n                        switch ($return) {\n                        case ''parsed'':\n                        $output = $migx->renderOutput($collectedSubrows[$row[$foreign]], $branch);\n                        //$subbranches = $modx->getOption(''_branches'', $branch, array());\n                        //if there are any placeholders left with the same alias from subbranch, remove them\n                        $output = str_replace(''[[+innerrows.'' . $alias . '']]'', '''', $output);\n                        break;\n                        case ''json'':\n                        case ''arrayprint'':\n                        $output = $collectedSubrows[$row[$foreign]];\n                        break;\n                        }\n                        */\n                        $output = $collectedSubrows[$row[$foreign]];\n\n                        $row[''innerrows.'' . $alias] = $output;\n\n                    }\n                    $rows[] = $row;\n                }\n\n            }\n\n            $temprows = $rows;\n            $rows = array();\n            foreach ($temprows as $row) {\n                //add additional placeholders\n                $row[''_level''] = $level;\n                $row[''_active''] = $modx->getOption(''_active'', $row, ''0'');\n                if ($currentClassname == $classname && $row[$currentKeyField] == $current) {\n                    $row[''_current''] = ''1'';\n                    $row[''_currentlabel''] = $currentlabel;\n                    $row[''_active''] = ''1'';\n                } else {\n                    $row[''_current''] = ''0'';\n                    $row[''_currentlabel''] = '''';\n                }\n                if ($row[''_active''] == ''1'') {\n                    $row[''_activelabel''] = $activelabel;\n                } else {\n                    $row[''_activelabel''] = '''';\n                }\n                $rows[] = $row;\n            }\n\n            return $rows;\n        }\n\n        function renderRow($row, $levelFromCurrent = 0)\n        {\n            $migx = &$this->migx;\n            $modx = &$this->modx;\n            $return = $modx->getOption(''return'', $this->config, ''parsed'');\n            $branchProperties = $modx->getOption(''_scriptProperties'', $row, array());\n            $current = $modx->getOption(''_current'', $row, ''0'');\n            $currentparent = $modx->getOption(''_currentparent'', $row, ''0'');\n            $levelFromCurrent = $current == ''1'' ? 1 : $levelFromCurrent;\n            $row[''_levelFromCurrent''] = $levelFromCurrent;\n            foreach ($branchProperties as $alias => $properties) {\n                $innerrows = $modx->getOption(''innerrows.'' . $alias, $row, array());\n                $subrows = $this->renderRows($innerrows, $properties, $levelFromCurrent, $currentparent);\n                if ($return == ''parsed'') {\n                    $subrows = $migx->renderOutput($subrows, $properties);\n                }\n                $row[''innerrows.'' . $alias] = $subrows;\n            }\n\n            return $row;\n        }\n\n        function renderRows($rows, $scriptProperties, $levelFromCurrent = 0, $siblingOfCurrent = ''0'')\n        {\n\n            $modx = &$this->modx;\n            $temprows = $rows;\n            $rows = array();\n            if ($levelFromCurrent > 0) {\n                $levelFromCurrent++;\n            }\n            foreach ($temprows as $row) {\n                $row[''_siblingOfCurrent''] = $siblingOfCurrent;\n                $row = $this->renderRow($row, $levelFromCurrent);\n                $rows[] = $row;\n            }\n            return $rows;\n        }\n    }\n}\n\n$instance = new MigxGetCollectionTree($modx, $scriptProperties);\n\nif (is_array($treeSchema)) {\n    $scriptProperties = $treeSchema;\n\n    $migx = $modx->getService(''migx'', ''Migx'', $modx->getOption(''migx.core_path'', null, $modx->getOption(''core_path'') . ''components/migx/'') . ''model/migx/'', $scriptProperties);\n    if (!($migx instanceof Migx))\n        return '''';\n\n    $defaultcontext = ''web'';\n    $migx->working_context = isset($modx->resource) ? $modx->resource->get(''context_key'') : $defaultcontext;\n    $instance->migx = &$migx;\n\n    $level = 1;\n    $scriptProperties[''alias''] = ''row'';\n    $rows = $instance->getRows($scriptProperties, $level);\n    $row = array();\n    $row[''innercounts.row''] = count($rows);\n    $row[''innerrows.row''] = $rows;\n    $row[''_scriptProperties''][''row''] = $scriptProperties;\n\n    $rows = $instance->renderRow($row);\n\n    $output = '''';\n    switch ($return) {\n        case ''parsed'':\n            $output = $modx->getOption(''innerrows.row'', $rows, '''');\n            break;\n        case ''json'':\n            $output = $modx->toJson($rows);\n            break;\n        case ''arrayprint'':\n            $output = ''<pre>'' . print_r($rows, 1) . ''</pre>'';\n            break;\n    }\n\n    return $output;\n\n}', 0, NULL, '', 0, '');

-- --------------------------------------------------------

--
-- Table structure for table `modx_site_templates`
--

CREATE TABLE IF NOT EXISTS `modx_site_templates` (
`id` int(10) unsigned NOT NULL,
  `source` int(10) unsigned NOT NULL DEFAULT '0',
  `property_preprocess` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `templatename` varchar(50) NOT NULL DEFAULT '',
  `description` varchar(255) NOT NULL DEFAULT 'Template',
  `editor_type` int(11) NOT NULL DEFAULT '0',
  `category` int(11) NOT NULL DEFAULT '0',
  `icon` varchar(255) NOT NULL DEFAULT '',
  `template_type` int(11) NOT NULL DEFAULT '0',
  `content` mediumtext NOT NULL,
  `locked` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `properties` text,
  `static` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `static_file` varchar(255) NOT NULL DEFAULT ''
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=12 ;

--
-- Dumping data for table `modx_site_templates`
--

INSERT INTO `modx_site_templates` (`id`, `source`, `property_preprocess`, `templatename`, `description`, `editor_type`, `category`, `icon`, `template_type`, `content`, `locked`, `properties`, `static`, `static_file`) VALUES
(1, 0, 0, 'Главная страница', 'Шаблон главной страницы', 0, 8, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body>\n  <div class="wrapper">\n	[[$nav]]\n    <div class="section-header">\n		<div class="header-huge-img" style="background:url([[++h.headerpic]]) no-repeat center center #eaedf2;">\n			<div class="container main-slogan-container">\n				<h1>[[++h.projectname]]</h1>\n				<p></p>\n			</div>\n		</div>\n	</div>\n	<div class="timeline-block">\n		<div class="timeline-zone">\n			<div class="container">\n				<div class="timeline-title-block">\n					<span>План-график реализации</span>\n				</div>\n				<div class="timeline-main-block">\n					<div class="red-timeline"></div>\n					<!--Список маркеров на таймлайне. Добавляем новый - указываем горизонтальное смещение "left" и заполняем атрибут data-content-->\n					<a style="left:123px;" tabindex="0" data-html="true" data-container=".one-plus-item-1" class="popover-dismiss one-plus-item one-plus-item-1" rel="popover" data-toggle="popover" data-trigger="" title="" data-content="<div class=poppver-toolyip-title>1 ЭТАП<br/>Содержимое этапа</div>"></a>\n					<a style="left:317px;" tabindex="1" data-html="true" data-container=".one-plus-item-2" class="popover-dismiss one-plus-item one-plus-item-2" rel="popover" data-toggle="popover" data-trigger="" title="" data-content="<div class=poppver-toolyip-title>2 ЭТАП<br/>Содержимое этапа</div>"></a>\n					<a style="left:485px;" tabindex="2" data-html="true" data-container=".one-plus-item-3" class="popover-dismiss one-plus-item one-plus-item-3" rel="popover" data-toggle="popover" data-trigger="" title="" data-content="<div class=poppver-toolyip-title>3 ЭТАП<br/>Содержимое этапа</div>"></a>\n					<a style="left:690px;" tabindex="3" data-html="true" data-container=".one-plus-item-4" class="popover-dismiss one-plus-item one-plus-item-4" rel="popover" data-toggle="popover" data-trigger="" title="" data-content="<div class=poppver-toolyip-title>4 ЭТАП<br/>Содержимое этапа</div>"></a>\n					<a style="left:859px;" tabindex="4" data-html="true" data-container=".one-plus-item-5" class="popover-dismiss one-plus-item one-plus-item-5" rel="popover" data-toggle="popover" data-trigger="" title="" data-content="<div class=poppver-toolyip-title>5 ЭТАП<br/>Содержимое этапа</div>"></a>\n					<!--Ниже список рисок-->\n					<div class="one-year-point first-point" style="left: -41px;">\n						<i></i>\n						<span>28 ноября, 2014 г.</span>\n					</div>\n					<div class="one-year-point start-year" data-year="2015" style="left: 134px;">\n						<i></i>\n						<span>2015</span>\n					</div>\n					<div class="one-year-point" style="left: 496px;">\n						<i></i>\n						<span>2016</span>\n					</div>\n					<div class="one-year-point last-point" style="right: -10px;">\n						<i></i>\n						<span>2017</span>\n					</div>\n				</div>\n			</div>\n		</div>\n		<div class="section-zakon" id="test">\n			<div class="container">\n				<div class="white-triangle"></div>\n				<h2>[[*soglashenie_title]]</h2>\n				<p>[[*soglashenie_number]]</p>\n				<a href="#" data-toggle="modal" class="btn-primary" data-target="#myModal">Подробнее</a>\n				<!-- Modal -->\n				<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">\n				  <div class="modal-dialog modal-lg">\n					<div class="modal-content">\n					  <div class="modal-header">\n						<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>\n						<h4 class="modal-title" id="myModalLabel">[[*soglashenie_number]]</h4>\n					  </div>\n					  <div class="modal-body">\n						[[*popup_text]]\n					  </div>\n					  <div class="modal-footer">\n						<button type="button" class="btn btn-default" data-dismiss="modal">Закрыть</button>\n					  </div>\n					</div>\n				  </div>\n				</div>\n			</div>\n		</div>\n		<div class="container">\n			<p class="work-mekhanizm-title">Механизм работы</p>\n			<div class="work-mekhanizm">\n			    [[getImageList?\n                    &docid=`1`\n                    &tvname=`mechanism`\n                    &tpl=`tpl.mechanism`\n                ]]\n			\n				<!--<div>\n					<img src="/assets/img/work-mech-1-demo.png" alt="">\n					<p>Название</p>\n				</div>\n				<div>\n					<img src="/assets/img/work-mech-2-demo.png" alt="">\n					<p>Название</p>\n				</div>\n				<div>\n					<img src="/assets/img/work-mech-3-demo.png" alt="">\n					<p>Название</p>\n				</div>\n				<div>\n					<img src="/assets/img/work-mech-4-demo.png" alt="">\n					<p>Название</p>\n				</div>\n				<div>\n					<img src="/assets/img/work-mech-5-demo.png" alt="">\n					<p>Название</p>\n				</div>-->\n			</div>\n		</div> \n	</div>\n	<div class="latest-news-main">\n		<div class="container">\n			<h2>Последние новости</h2>\n			 [[pdoPage? \n    			    &parents=`13`\n    			    &limit=`3`\n    			    &tpl=`tpl.oneNews_latest`\n			    ]]\n		</div> \n	</div>\n	<div class="project-members">\n		<div class="container">\n			<h2>Участники проекта</h2>\n			<div role="tabpanel" class="tabpanel-block">\n			  <ul class="nav  nav-pills main-page-tabs" role="tablist">\n					<li role="presentation" class="active"><a href="#home" aria-controls="home" role="tab" data-toggle="tab">Получатель субсидии</a></li>\n					<li role="presentation"><a href="#profile" aria-controls="profile" role="tab" data-toggle="tab">Индустриальный партнер</a></li>\n					<li role="presentation"><a href="#messages" aria-controls="messages" role="tab" data-toggle="tab">Соисполнители</a></li>\n			  </ul>\n			  <div class="tab-content">\n					<div role="tabpanel" class="tab-pane fade in active" id="home">\n						[[*main_player]]\n					</div>\n					<div role="tabpanel" class="tab-pane fade in" id="profile">\n					    [[*industrial_player]]\n					</div>\n					<div role="tabpanel" class="tab-pane fade in" id="messages">\n					    [[*coworkers_player]]\n					</div>\n			  </div>\n				<a href="[[~9]]" class="btn btn-default">Подробнее об участнике проекта</a>\n			</div>\n		</div> \n	</div>\n	</div>\n	[[$footer]]\n  </body>\n</html>', 0, 'a:0:{}', 0, ''),
(11, 0, 0, 'Шаблон с сайдбаром (участники)', 'Шаблон внутренней страницы (две колонки)', 0, 6, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body>\n <div class="wrapper">\n		[[$nav]]\n		[[$breadcrumbs]]\n		<div class="main-inner-content">\n			<div class="container">\n    			<div class="left-content">\n    			    <!--*content:default=`<p class="empty_list">Информация готовится к размещению...</p>`-->\n    			    <div role="tabpanel" class="tabpanel-block">\n			  <ul class="nav  nav-pills main-page-tabs" role="tablist">\n					<li role="presentation" class="active"><a href="#home" aria-controls="home" role="tab" data-toggle="tab">Получатель субсидии</a></li>\n					<li role="presentation"><a href="#profile" aria-controls="profile" role="tab" data-toggle="tab">Индустриальный партнер</a></li>\n					<li role="presentation"><a href="#messages" aria-controls="messages" role="tab" data-toggle="tab">Соисполнители</a></li>\n			  </ul>\n			  <div class="tab-content">\n				<div role="tabpanel" class="tab-pane fade in active" id="home">\n				    [[*main_player]]\n				</div>\n				<div role="tabpanel" class="tab-pane fade in" id="profile">\n				    [[*industrial_player]]\n				</div>\n				<div role="tabpanel" class="tab-pane fade in" id="messages">\n				    [[*coworkers_player]]\n				</div>\n			  </div>\n			</div>\n			[[*content]]\n    			</div>\n    			<div class="sidebar">\n    			    [[!pdoMenu? \n    			       &parents=`[[#[[*id]].parent]]` &level=`1` \n        			    &tplOuter=`@INLINE  <div class="sidebar-menu [[+classnames]]">[[+wrapper]]</div>` \n        			    &tpl=`@INLINE  <a href="[[+link]]" [[+classes]] [[+attributes]]>[[+menutitle]]</a>`\n    			    ]]\n				</div>\n			</div>\n		</div>\n		<div class="latest-news-inner">\n			<div class="container">\n				<h2>Последние новости</h2>\n				[[!pdoPage:default=`Нет новостей`? \n    			    &parents=`13`\n    			    &limit=`3`\n    			    &tpl=`tpl.oneNews_latest`\n			    ]]\n			</div> \n		</div>\n	</div>\n	[[$footer]]\n  </body>\n</html>', 0, 'a:0:{}', 0, ''),
(7, 0, 0, 'Список отчетов', 'Шаблон списка отчетов', 0, 9, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body>\n <div class="wrapper">\n		[[$nav]]\n		[[$breadcrumbs]]\n		<div class="main-inner-content">\n			<div class="container">\n			    [[*content]]\n			    <div class="news-dep-links">\n			        [[!pdoMenu? \n    			        &parents=`3`\n    			        &showHidden=`1`\n    			        &level=`1` \n    			        &tplOuter=`@INLINE  [[+wrapper]]` \n    			        &tpl=`@INLINE <a href="[[+link]]" class="btn btn-default" [[+attributes]]>[[+menutitle]]</a>` \n    			        &tplHere=`@INLINE <a class="btn btn-primary" href="[[+link]]" [[+attributes]]>[[+menutitle]]</a>`\n			        ]]\n			    </div>\n			    \n			    [[!pdoPage? \n    			    &parents=`[[*id:isequal=`3`:then=`[[!pdoResources? &showHidden=`1` &returnIds=`1` &limit=`0`]]`:else=`[[*id]]`]]` \n    			    &tpl=`tpl.oneReport`\n			    ]]\n			    [[+pageCount:isequal=`0`:then=`<p class="empty_list">Отчеты пока не добавлены...</p>`]]\n			</div>\n		</div>\n		<div class="latest-news-inner">\n			<div class="container">\n				<h2>Последние новости</h2>\n				[[!pdoPage:default=`Нет новостей`? \n    			    &parents=`13`\n    			    &limit=`3`\n    			    &tpl=`tpl.oneNews_latest`\n			    ]]\n			</div> \n		</div>\n	</div>\n	[[$footer]]\n  </body>\n</html>', 0, 'a:0:{}', 0, ''),
(8, 0, 0, 'Один отчет', 'Шаблон внутренней страницы с отчетом', 0, 9, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body>\n <div class="wrapper">\n		[[$nav]]\n		[[$breadcrumbs]]\n		<div class="main-inner-content">\n			<div class="container">\n			    [[*content:default=`<p class="empty_list">Информация готовится к размещению...</p>`]]\n			</div>\n		</div>\n		<div class="latest-news-inner">\n			<div class="container">\n				<h2>Последние новости</h2>\n				[[!pdoPage:default=`Нет новостей`? \n    			    &parents=`13`\n    			    &limit=`3`\n    			    &tpl=`tpl.oneNews_latest`\n			    ]]\n			</div> \n		</div>\n	</div>\n	[[$footer]]\n  </body>\n</html>', 0, 'a:0:{}', 0, ''),
(9, 0, 0, 'Структура (Этапы)', 'Шаблон списка этапов', 0, 14, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body>\n <div class="wrapper">\n		[[$nav]]\n		[[$breadcrumbs]]\n		<div class="main-inner-content">\n			<div class="container">\n    			<div class="left-content">\n    			    <div class="news-dep-links">\n    			        [[!pdoMenu? \n        			        \n        			        &showHidden=`1`\n        			        &level=`1` \n        			        &tplOuter=`@INLINE  [[+wrapper]]` \n        			        &tpl=`@INLINE <a href="[[+link]]" class="btn btn-default" [[+attributes]]>[[+menutitle]]</a>` \n        			        &tplHere=`@INLINE <a class="btn btn-primary" href="[[+link]]" [[+attributes]]>[[+menutitle]]</a>`\n    			        ]]\n    			    </div>\n    			    [[*content:default=`<p class="empty_list">Информация готовится к размещению...</p>`]]\n    			    \n    			</div>\n    			<div class="sidebar">\n    			    [[!pdoMenu? \n    			       &parents=`[[#[[*id]].parent]]` &level=`1` \n        			    &tplOuter=`@INLINE  <div class="sidebar-menu [[+classnames]]">[[+wrapper]]</div>` \n        			    &tpl=`@INLINE  <a href="[[+link]]" [[+classes]] [[+attributes]]>[[+menutitle]]</a>`\n    			    ]]\n				</div>\n			</div>\n		</div>\n		<div class="latest-news-inner">\n			<div class="container">\n				<h2>Последние новости</h2>\n				[[!pdoPage:default=`Нет новостей`? \n    			    &parents=`13`\n    			    &limit=`3`\n    			    &tpl=`tpl.oneNews_latest`\n			    ]]\n			</div> \n		</div>\n	</div>\n	[[$footer]]\n  </body>\n</html>', 0, 'a:0:{}', 0, ''),
(10, 0, 0, 'Структура (Один этап)', 'Шаблон одного этапа', 0, 14, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body>\n <div class="wrapper">\n		[[$nav]]\n		[[$breadcrumbs]]\n		<div class="main-inner-content">\n			<div class="container">\n    			<div class="left-content">\n    		    	<div class="news-dep-links">\n    			        [[pdoMenu?\n    			            &parents=`8`\n        			        &showHidden=`1`\n        			        &level=`1` \n        			        &tplOuter=`@INLINE  [[+wrapper]]` \n        			        &tpl=`@INLINE <a href="[[+link]]" class="btn btn-default" [[+attributes]]>[[+menutitle]]</a>` \n        			        &tplHere=`@INLINE <a class="btn btn-primary" href="[[+link]]" [[+attributes]]>[[+menutitle]]</a>`\n    			        ]]\n    			    </div>\n    			    [[*content:default=`<p class="empty_list">Информация готовится к размещению...</p>`]]\n    			</div>\n    			<div class="sidebar">\n    			    [[pdoMenu? \n    			       &parents=`2` &level=`1` \n        			    &tplOuter=`@INLINE  <div class="sidebar-menu [[+classnames]]">[[+wrapper]]</div>` \n        			    &tpl=`@INLINE  <a href="[[+link]]" [[+classes]] [[+attributes]]>[[+menutitle]]</a>`\n    			    ]]\n				</div>\n			</div>\n		</div>\n		<div class="latest-news-inner">\n			<div class="container">\n				<h2>Последние новости</h2>\n				[[pdoPage? \n    			    &parents=`13`\n    			    &limit=`3`\n    			    &tpl=`tpl.oneNews_latest`\n			    ]]\n			</div> \n		</div>\n	</div>\n	[[$footer]]\n  </body>\n</html>', 0, 'a:0:{}', 0, ''),
(2, 0, 0, 'Внутренняя типовая', 'Шаблон внутренней страницы (одна колонка)', 0, 6, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body>\n <div class="wrapper">\n		[[$nav]]\n		[[$breadcrumbs]]\n		<div class="main-inner-content">\n			<div class="container">\n			    [[*content:default=`<p class="empty_list">Информация готовится к размещению...</p>`]]\n			</div>\n		</div>\n		<div class="latest-news-inner">\n			<div class="container">\n				<h2>Последние новости</h2>\n				[[!pdoPage:default=`Нет новостей`? \n    			    &parents=`13`\n    			    &limit=`3`\n    			    &tpl=`tpl.oneNews_latest`\n			    ]]\n			</div> \n		</div>\n	</div>\n	[[$footer]]\n  </body>\n</html>', 0, 'a:0:{}', 0, ''),
(3, 0, 0, 'Шаблон с сайдбаром', 'Шаблон внутренней страницы (две колонки)', 0, 6, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body>\n <div class="wrapper">\n		[[$nav]]\n		[[$breadcrumbs]]\n		<div class="main-inner-content">\n			<div class="container">\n    			<div class="left-content">\n    			    [[*content:default=`<p class="empty_list">Информация готовится к размещению...</p>`]]\n    			</div>\n    			<div class="sidebar">\n    			    [[!pdoMenu? \n    			       &parents=`[[#[[*id]].parent]]` &level=`1` \n        			    &tplOuter=`@INLINE  <div class="sidebar-menu [[+classnames]]">[[+wrapper]]</div>` \n        			    &tpl=`@INLINE  <a href="[[+link]]" [[+classes]] [[+attributes]]>[[+menutitle]]</a>`\n    			    ]]\n				</div>\n			</div>\n		</div>\n		<div class="latest-news-inner">\n			<div class="container">\n				<h2>Последние новости</h2>\n				[[!pdoPage:default=`Нет новостей`? \n    			    &parents=`13`\n    			    &limit=`3`\n    			    &tpl=`tpl.oneNews_latest`\n			    ]]\n			</div> \n		</div>\n	</div>\n	[[$footer]]\n  </body>\n</html>', 0, 'a:0:{}', 0, ''),
(6, 0, 0, 'Страница контактов', 'Шаблон внутренней страницы (одна колонка)', 0, 7, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body style="background: #4f5664;">\n <div class="wrapper contact-page-wrapper">\n		[[$nav]]\n		[[$breadcrumbs]]\n		<div class="contact-page-content">\n		    <div class="container">\n    			<div class="footer-contacts">\n    				<h2>[[++c.fullname]]</h2>\n    				<div class="address"><span class="footer-small-text" style="">[[++c.officename]]</span>\n    					[[++c.officelocation]]\n    			    </div>\n    				<div class="tel" style="  margin-bottom: 5px;"><span class="footer-small-text">Телефон:</span>\n                    	[[++c.phone]]<br>\n                    	<span class="footer-small-text">Тел./факс:</span>\n                    	[[++c.fax]]\n                	</div>\n    				<div class="date-time"><span class="footer-small-text">Режим работы <br>[[++c.workinghours]]</span></div>\n    				<h2 style="  margin-bottom: 3px;  margin-top: 72px;">Руководитель проекта: <br/>[[++c.leader]]</h2>\n    				<span style="color: #9ca4b3;font-size: 14px;display: block;margin-bottom: 35px;">[[++c.leaderstatus]]</span>\n    				<div class="tel"><span class="footer-small-text" style="">Телефон</span>\n    					[[++c.leaderphone]]\n    			    </div>\n    				<div class="e-mail "><span class="footer-small-text">Электронная почта:</span>\n                        [[++c.leaderemail]]\n                	</div>\n                	<span style="color: #9ca4b3;font-size: 14px;display: block;  margin-top: 75px;">[[++f.copyright]]</span>\n    			</div>\n    			<div class="footer-form">\n    				<h2>Форма обратной связи</h2>\n    				<div class="form-wrapper">\n    				     [[!AjaxForm?\n                        	&snippet=`FormIt`\n                        	&form=`custom_tpl.AjaxForm.example_cp`\n                        	&hooks=`email`\n                        	&emailTpl=`emailTmpl_cp` \n                        	&emailSubject=`Message from Visualisation.`\n                        	&emailTo=`[[++c.formemail]]`\n                        	&validate=`name:required,email:required,message:required`\n                        	&validationErrorMessage=`Something went wrong!`\n                        	&successMessage=`It''s ok!`\n                        	&frontend_js=`[[+assetsUrl]]js/c_default.js`\n                        ]]\n    				</div>\n    			</div>\n    		</div>\n		</div>\n	</div>\n    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>\n    <script src="/assets/js/bootstrap.min.js"></script>\n    <script src="/assets/js/ie10-viewport-bug-workaround.js"></script>\n    <script src="/assets/js/custom.js"></script>\n    <script src="/assets/js/jquery.smoothscroll.js"></script>\n  </body>\n</html>', 0, 'a:0:{}', 0, ''),
(4, 0, 0, 'Список новостей', 'Шаблон внутренней страницы (одна колонка)', 0, 5, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body>\n <div class="wrapper">\n		[[$nav]]\n		[[$breadcrumbs]]\n		<div class="main-inner-content">\n			<div class="container">\n			    [[*content]]\n			    <div class="news-dep-links">\n			        [[!pdoMenu? \n    			        &parents=`5`\n    			         &showHidden=`1`\n    			        &level=`1` \n    			        &tplOuter=`@INLINE  [[+wrapper]]` \n    			        &tpl=`@INLINE <a href="[[+link]]" class="btn btn-default" [[+attributes]]>[[+menutitle]]</a>` \n    			        &tplHere=`@INLINE <a class="btn btn-primary" href="[[+link]]" [[+attributes]]>[[+menutitle]]</a>`\n			        ]]\n			    </div>\n			    [[!pdoPage? \n    			    &parents=`[[*id:isequal=`5`:then=`12,13`:else=`[[*id]]`]]` \n    			    &tpl=`tpl.oneNews`\n    			    &limit=`10`\n			    ]]\n			    [[+pageCount:isequal=`0`:then=`<p class="empty_list">Новостей пока нет...</p>`]]\n			    [[!+page.nav]]\n			</div>\n		</div>\n	</div>\n	[[$footer]]\n  </body>\n</html>', 0, 'a:0:{}', 0, ''),
(5, 0, 0, 'Одна новость', 'Шаблон внутренней страницы (одна колонка)', 0, 5, '', 0, '<!DOCTYPE html>\n<html lang="en">\n[[$head]]\n  <body>\n <div class="wrapper">\n		[[$nav]]\n		[[$breadcrumbs]]\n		<div class="main-inner-content">\n			<div class="container">\n			    [[*content:default=`<p class="empty_list">Информация готовится к размещению...</p>`]]\n			</div>\n		</div>\n		<div class="latest-news-inner">\n			<div class="container">\n				<h2>Последние новости</h2>\n				[[!pdoPage:default=`Нет новостей`? \n    			    &parents=`13`\n    			    &limit=`3`\n    			    &tpl=`tpl.oneNews_latest`\n			    ]]\n			</div> \n		</div>\n	</div>\n	[[$footer]]\n  </body>\n</html>', 0, 'a:0:{}', 0, '');

-- --------------------------------------------------------

--
-- Table structure for table `modx_site_tmplvars`
--

CREATE TABLE IF NOT EXISTS `modx_site_tmplvars` (
`id` int(10) unsigned NOT NULL,
  `source` int(10) unsigned NOT NULL DEFAULT '0',
  `property_preprocess` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `type` varchar(20) NOT NULL DEFAULT '',
  `name` varchar(50) NOT NULL DEFAULT '',
  `caption` varchar(80) NOT NULL DEFAULT '',
  `description` varchar(255) NOT NULL DEFAULT '',
  `editor_type` int(11) NOT NULL DEFAULT '0',
  `category` int(11) NOT NULL DEFAULT '0',
  `locked` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `elements` text,
  `rank` int(11) NOT NULL DEFAULT '0',
  `display` varchar(20) NOT NULL DEFAULT '',
  `default_text` mediumtext,
  `properties` text,
  `input_properties` text,
  `output_properties` text,
  `static` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `static_file` varchar(255) NOT NULL DEFAULT ''
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;

--
-- Dumping data for table `modx_site_tmplvars`
--

INSERT INTO `modx_site_tmplvars` (`id`, `source`, `property_preprocess`, `type`, `name`, `caption`, `description`, `editor_type`, `category`, `locked`, `elements`, `rank`, `display`, `default_text`, `properties`, `input_properties`, `output_properties`, `static`, `static_file`) VALUES
(1, 1, 0, 'richtext', 'popup_text', 'Текст соглашения', '', 0, 8, 0, '', 2, 'default', '', 'a:0:{}', 'a:3:{s:10:"allowBlank";s:4:"true";s:9:"maxLength";s:0:"";s:9:"minLength";s:0:"";}', 'a:0:{}', 0, ''),
(2, 1, 0, 'richtext', 'main_player', 'Получатель субсидии', '', 0, 16, 0, '', 0, 'default', '', 'a:0:{}', 'a:0:{}', 'a:0:{}', 0, ''),
(3, 1, 0, 'richtext', 'industrial_player', 'Индустриальный партнер', '', 0, 16, 0, '', 0, 'default', '', 'a:0:{}', 'a:0:{}', 'a:0:{}', 0, ''),
(4, 1, 0, 'richtext', 'coworkers_player', 'Соисполнители', '', 0, 16, 0, '', 0, 'default', '', 'a:0:{}', 'a:0:{}', 'a:0:{}', 0, ''),
(5, 1, 0, 'image', 'mechanism.img', 'Изображение элементв "Механизм"', '', 0, 17, 0, '', 0, 'default', '', 'a:0:{}', 'a:0:{}', 'a:0:{}', 0, ''),
(6, 1, 0, 'text', 'mechanism.title', 'Заголовок элемента "Механизм"', '', 0, 17, 0, '', 0, 'default', '', 'a:0:{}', 'a:3:{s:10:"allowBlank";s:4:"true";s:9:"maxLength";s:0:"";s:9:"minLength";s:0:"";}', 'a:0:{}', 0, ''),
(7, 1, 0, 'migx', 'mechanism', 'Список блоков "Механизм работы"', '', 0, 17, 0, '', 0, 'default', '', 'a:0:{}', 'a:7:{s:7:"configs";s:0:"";s:8:"formtabs";s:223:"[\n  {"caption":"Механизм работы", "fields": [\n    {"field":"img","caption":"Картинка","inputTV":"mechanism.img"},\n    {"field":"title","caption":"Заголовок","inputTV":"mechanism.title"}\n  ]}\n]";s:7:"columns";s:221:"[\n    {"header": "Заголовок", "width": "660", "dataIndex": "title"},\n    {"header": "Картинка", "width": "120", "dataIndex": "img",\n                                       "renderer": "this.renderImage"}\n]";s:7:"btntext";s:0:"";s:10:"previewurl";s:0:"";s:10:"jsonvarkey";s:0:"";s:19:"autoResourceFolders";s:5:"false";}', 'a:0:{}', 0, ''),
(8, 1, 0, 'textarea', 'soglashenie_title', 'Заголовок перед кнопкой "Подробнее"', 'Например, в этом поле может быть написано: "Реализация проекта осуществляется на конкурсной основе Минобрнауки РФ и ФЦПИР"', 0, 8, 0, '', 0, 'default', '', 'a:0:{}', 'a:1:{s:10:"allowBlank";s:4:"true";}', 'a:0:{}', 0, ''),
(9, 1, 0, 'text', 'soglashenie_number', 'Текст с номером соглашения', 'В этом поле вы можете написать: "Соглашение № XX.XXX.XX.XXXX"', 0, 8, 0, '', 1, 'default', '', 'a:0:{}', 'a:3:{s:10:"allowBlank";s:4:"true";s:9:"maxLength";s:0:"";s:9:"minLength";s:0:"";}', 'a:0:{}', 0, '');

-- --------------------------------------------------------

--
-- Table structure for table `modx_site_tmplvar_access`
--

CREATE TABLE IF NOT EXISTS `modx_site_tmplvar_access` (
`id` int(10) unsigned NOT NULL,
  `tmplvarid` int(10) NOT NULL DEFAULT '0',
  `documentgroup` int(10) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_site_tmplvar_contentvalues`
--

CREATE TABLE IF NOT EXISTS `modx_site_tmplvar_contentvalues` (
`id` int(10) unsigned NOT NULL,
  `tmplvarid` int(10) NOT NULL DEFAULT '0',
  `contentid` int(10) NOT NULL DEFAULT '0',
  `value` mediumtext NOT NULL
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ;

--
-- Dumping data for table `modx_site_tmplvar_contentvalues`
--

INSERT INTO `modx_site_tmplvar_contentvalues` (`id`, `tmplvarid`, `contentid`, `value`) VALUES
(1, 1, 1, '<h2 style="text-align: center;"><strong>СОГЛАШЕНИЕ № XX.XXX.XX.XXXX</strong></h2>\r\n<h2 style="text-align: center;"><strong>О ПРЕДОСТАВЛЕНИИ СУБСИДИИ</strong></h2>\r\n<p style="text-align: center;">&nbsp;</p>\r\n<p style="text-align: center;">г. Москва&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &laquo;___&raquo;___________2014 г.</p>\r\n<p>&nbsp;</p>'),
(2, 2, 1, '<div class="tab-pahe-title-block">\r\n<div class="pull-left">\r\n<p class="tab-pahe-title">Название компании</p>\r\n</div>\r\n<div class="pull-right"><img src="assets/img/tab-panel-logo.png" alt="" /></div>\r\n</div>\r\n<div class="col-xs-4" style="padding-right: 26px;">\r\n<p>Описание компании - получателя субсидии.</p>\r\n<ul>\r\n<li>текст;</li>\r\n<li>текст.</li>\r\n</ul>\r\n<a href="http://companyname.ru/" target="_blank">companyname.ru</a></div>\r\n<div class="col-xs-8">\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n</div>'),
(3, 3, 1, '<div class="tab-pahe-title-block">\r\n<div class="pull-left">\r\n<p class="tab-pahe-title">Название компании</p>\r\n</div>\r\n<div class="pull-right"><img src="assets/img/tab-panel-logo.png" alt="" /></div>\r\n</div>\r\n<div class="col-xs-4" style="padding-right: 26px;">\r\n<p>Описание компании - индустриального партнера.</p>\r\n<ul>\r\n<li>текст;</li>\r\n<li>текст.</li>\r\n</ul>\r\n<a href="http://companyname.ru/" target="_blank">companyname.ru</a></div>\r\n<div class="col-xs-8">\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n</div>'),
(4, 4, 1, '<div class="tab-pahe-title-block">\r\n<div class="pull-left">\r\n<p class="tab-pahe-title">Название компании</p>\r\n</div>\r\n<div class="pull-right"><img src="assets/img/tab-panel-logo.png" alt="" /></div>\r\n</div>\r\n<div class="col-xs-4" style="padding-right: 26px;">\r\n<p>Описание компании - соисполнителя.</p>\r\n<ul>\r\n<li>текст;</li>\r\n<li>текст.</li>\r\n</ul>\r\n<a href="http://companyname.ru/" target="_blank">companyname.ru</a></div>\r\n<div class="col-xs-8">\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n</div>'),
(5, 2, 9, '<h2>Название компании</h2>\r\n<p><br /><img src="assets/img/tab-panel-logo.png" alt="" /></p>\r\n<p>Подробное описание компании - получателя субсидии.</p>\r\n<ul>\r\n<li>Текст;</li>\r\n<li>Текст.</li>\r\n</ul>\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n<p><a href="http://companyname.ru/" target="_blank">companyname.ru</a></p>'),
(6, 3, 9, '<h2>Название компании</h2>\r\n<p><br /><img src="assets/img/tab-panel-logo.png" alt="" /></p>\r\n<p>Подробное описание компании - индустриального партнера.</p>\r\n<ul>\r\n<li>Текст;</li>\r\n<li>Текст.</li>\r\n</ul>\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n<p><a href="http://companyname.ru/" target="_blank">companyname.ru</a></p>'),
(7, 4, 9, '<h2>Название компании</h2>\r\n<p><br /><img src="assets/img/tab-panel-logo.png" alt="" /></p>\r\n<p>Подробное описание компании - соисполнителя.</p>\r\n<ul>\r\n<li>Текст;</li>\r\n<li>Текст.</li>\r\n</ul>\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n<p>Текст.</p>\r\n<p><a href="http://companyname.ru/" target="_blank">companyname.ru</a></p>'),
(8, 7, 1, '[{"MIGX_id":"1","img":"assets\\/img\\/work-mech-1-demo.png","title":"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435 1"},{"MIGX_id":"2","img":"assets\\/img\\/work-mech-2-demo.png","title":"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435 2"},{"MIGX_id":"3","img":"assets\\/img\\/work-mech-3-demo.png","title":"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435 3"},{"MIGX_id":"4","img":"assets\\/img\\/work-mech-4-demo.png","title":"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435 4"},{"MIGX_id":"5","img":"assets\\/img\\/work-mech-5-demo.png","title":"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435 5"}]'),
(9, 8, 1, 'Реализация проекта осуществляется<br/>на конкурсной основе Минобрнауки РФ и ФЦПИР'),
(10, 9, 1, 'Соглашение № XX.XXX.XX.XXXX');

-- --------------------------------------------------------

--
-- Table structure for table `modx_site_tmplvar_templates`
--

CREATE TABLE IF NOT EXISTS `modx_site_tmplvar_templates` (
  `tmplvarid` int(10) NOT NULL DEFAULT '0',
  `templateid` int(11) NOT NULL DEFAULT '0',
  `rank` int(11) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_site_tmplvar_templates`
--

INSERT INTO `modx_site_tmplvar_templates` (`tmplvarid`, `templateid`, `rank`) VALUES
(1, 1, 0),
(2, 1, 0),
(2, 11, 0),
(3, 1, 0),
(3, 11, 0),
(4, 1, 0),
(4, 11, 0),
(7, 1, 0),
(8, 1, 0),
(9, 1, 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_system_eventnames`
--

CREATE TABLE IF NOT EXISTS `modx_system_eventnames` (
  `name` varchar(50) NOT NULL,
  `service` tinyint(4) unsigned NOT NULL DEFAULT '0',
  `groupname` varchar(20) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_system_eventnames`
--

INSERT INTO `modx_system_eventnames` (`name`, `service`, `groupname`) VALUES
('OnPluginEventBeforeSave', 1, 'Plugin Events'),
('OnPluginEventSave', 1, 'Plugin Events'),
('OnPluginEventBeforeRemove', 1, 'Plugin Events'),
('OnPluginEventRemove', 1, 'Plugin Events'),
('OnResourceGroupSave', 1, 'Security'),
('OnResourceGroupBeforeSave', 1, 'Security'),
('OnResourceGroupRemove', 1, 'Security'),
('OnResourceGroupBeforeRemove', 1, 'Security'),
('OnSnippetBeforeSave', 1, 'Snippets'),
('OnSnippetSave', 1, 'Snippets'),
('OnSnippetBeforeRemove', 1, 'Snippets'),
('OnSnippetRemove', 1, 'Snippets'),
('OnSnipFormPrerender', 1, 'Snippets'),
('OnSnipFormRender', 1, 'Snippets'),
('OnBeforeSnipFormSave', 1, 'Snippets'),
('OnSnipFormSave', 1, 'Snippets'),
('OnBeforeSnipFormDelete', 1, 'Snippets'),
('OnSnipFormDelete', 1, 'Snippets'),
('OnTemplateBeforeSave', 1, 'Templates'),
('OnTemplateSave', 1, 'Templates'),
('OnTemplateBeforeRemove', 1, 'Templates'),
('OnTemplateRemove', 1, 'Templates'),
('OnTempFormPrerender', 1, 'Templates'),
('OnTempFormRender', 1, 'Templates'),
('OnBeforeTempFormSave', 1, 'Templates'),
('OnTempFormSave', 1, 'Templates'),
('OnBeforeTempFormDelete', 1, 'Templates'),
('OnTempFormDelete', 1, 'Templates'),
('OnTemplateVarBeforeSave', 1, 'Template Variables'),
('OnTemplateVarSave', 1, 'Template Variables'),
('OnTemplateVarBeforeRemove', 1, 'Template Variables'),
('OnTemplateVarRemove', 1, 'Template Variables'),
('OnTVFormPrerender', 1, 'Template Variables'),
('OnTVFormRender', 1, 'Template Variables'),
('OnBeforeTVFormSave', 1, 'Template Variables'),
('OnTVFormSave', 1, 'Template Variables'),
('OnBeforeTVFormDelete', 1, 'Template Variables'),
('OnTVFormDelete', 1, 'Template Variables'),
('OnTVInputRenderList', 1, 'Template Variables'),
('OnTVInputPropertiesList', 1, 'Template Variables'),
('OnTVOutputRenderList', 1, 'Template Variables'),
('OnTVOutputRenderPropertiesList', 1, 'Template Variables'),
('OnUserGroupBeforeSave', 1, 'User Groups'),
('OnUserGroupSave', 1, 'User Groups'),
('OnUserGroupBeforeRemove', 1, 'User Groups'),
('OnUserGroupRemove', 1, 'User Groups'),
('OnBeforeUserGroupFormSave', 1, 'User Groups'),
('OnUserGroupFormSave', 1, 'User Groups'),
('OnBeforeUserGroupFormRemove', 1, 'User Groups'),
('OnDocFormPrerender', 1, 'Resources'),
('OnDocFormRender', 1, 'Resources'),
('OnBeforeDocFormSave', 1, 'Resources'),
('OnDocFormSave', 1, 'Resources'),
('OnBeforeDocFormDelete', 1, 'Resources'),
('OnDocFormDelete', 1, 'Resources'),
('OnDocPublished', 5, 'Resources'),
('OnDocUnPublished', 5, 'Resources'),
('OnBeforeEmptyTrash', 1, 'Resources'),
('OnEmptyTrash', 1, 'Resources'),
('OnResourceTVFormPrerender', 1, 'Resources'),
('OnResourceTVFormRender', 1, 'Resources'),
('OnResourceAutoPublish', 1, 'Resources'),
('OnResourceDelete', 1, 'Resources'),
('OnResourceUndelete', 1, 'Resources'),
('OnResourceBeforeSort', 1, 'Resources'),
('OnResourceSort', 1, 'Resources'),
('OnResourceDuplicate', 1, 'Resources'),
('OnResourceToolbarLoad', 1, 'Resources'),
('OnResourceRemoveFromResourceGroup', 1, 'Resources'),
('OnResourceAddToResourceGroup', 1, 'Resources'),
('OnRichTextEditorRegister', 1, 'RichText Editor'),
('OnRichTextEditorInit', 1, 'RichText Editor'),
('OnRichTextBrowserInit', 1, 'RichText Editor'),
('OnWebLogin', 3, 'Security'),
('OnBeforeWebLogout', 3, 'Security'),
('OnWebLogout', 3, 'Security'),
('OnManagerLogin', 2, 'Security'),
('OnBeforeManagerLogout', 2, 'Security'),
('OnManagerLogout', 2, 'Security'),
('OnBeforeWebLogin', 3, 'Security'),
('OnWebAuthentication', 3, 'Security'),
('OnBeforeManagerLogin', 2, 'Security'),
('OnManagerAuthentication', 2, 'Security'),
('OnManagerLoginFormRender', 2, 'Security'),
('OnManagerLoginFormPrerender', 2, 'Security'),
('OnPageUnauthorized', 1, 'Security'),
('OnUserFormPrerender', 1, 'Users'),
('OnUserFormRender', 1, 'Users'),
('OnBeforeUserFormSave', 1, 'Users'),
('OnUserFormSave', 1, 'Users'),
('OnBeforeUserFormDelete', 1, 'Users'),
('OnUserFormDelete', 1, 'Users'),
('OnUserNotFound', 1, 'Users'),
('OnBeforeUserActivate', 1, 'Users'),
('OnUserActivate', 1, 'Users'),
('OnBeforeUserDeactivate', 1, 'Users'),
('OnUserDeactivate', 1, 'Users'),
('OnBeforeUserDuplicate', 1, 'Users'),
('OnUserDuplicate', 1, 'Users'),
('OnUserChangePassword', 1, 'Users'),
('OnUserBeforeRemove', 1, 'Users'),
('OnUserBeforeSave', 1, 'Users'),
('OnUserSave', 1, 'Users'),
('OnUserRemove', 1, 'Users'),
('OnUserBeforeAddToGroup', 1, 'User Groups'),
('OnUserAddToGroup', 1, 'User Groups'),
('OnUserBeforeRemoveFromGroup', 1, 'User Groups'),
('OnUserRemoveFromGroup', 1, 'User Groups'),
('OnWebPagePrerender', 5, 'System'),
('OnBeforeCacheUpdate', 4, 'System'),
('OnCacheUpdate', 4, 'System'),
('OnLoadWebPageCache', 4, 'System'),
('OnBeforeSaveWebPageCache', 4, 'System'),
('OnSiteRefresh', 1, 'System'),
('OnFileManagerDirCreate', 1, 'System'),
('OnFileManagerDirRemove', 1, 'System'),
('OnFileManagerDirRename', 1, 'System'),
('OnFileManagerFileRename', 1, 'System'),
('OnFileManagerFileRemove', 1, 'System'),
('OnFileManagerFileUpdate', 1, 'System'),
('OnFileManagerFileCreate', 1, 'System'),
('OnFileManagerBeforeUpload', 1, 'System'),
('OnFileManagerUpload', 1, 'System'),
('OnFileManagerMoveObject', 1, 'System'),
('OnFileCreateFormPrerender', 1, 'System'),
('OnFileEditFormPrerender', 1, 'System'),
('OnManagerPageInit', 2, 'System'),
('OnManagerPageBeforeRender', 2, 'System'),
('OnManagerPageAfterRender', 2, 'System'),
('OnWebPageInit', 5, 'System'),
('OnLoadWebDocument', 5, 'System'),
('OnParseDocument', 5, 'System'),
('OnWebPageComplete', 5, 'System'),
('OnBeforeManagerPageInit', 2, 'System'),
('OnPageNotFound', 1, 'System'),
('OnHandleRequest', 5, 'System'),
('OnMODXInit', 5, 'System'),
('OnElementNotFound', 1, 'System'),
('OnSiteSettingsRender', 1, 'Settings'),
('OnInitCulture', 1, 'Internationalization'),
('OnCategorySave', 1, 'Categories'),
('OnCategoryBeforeSave', 1, 'Categories'),
('OnCategoryRemove', 1, 'Categories'),
('OnCategoryBeforeRemove', 1, 'Categories'),
('OnChunkSave', 1, 'Chunks'),
('OnChunkBeforeSave', 1, 'Chunks'),
('OnChunkRemove', 1, 'Chunks'),
('OnChunkBeforeRemove', 1, 'Chunks'),
('OnChunkFormPrerender', 1, 'Chunks'),
('OnChunkFormRender', 1, 'Chunks'),
('OnBeforeChunkFormSave', 1, 'Chunks'),
('OnChunkFormSave', 1, 'Chunks'),
('OnBeforeChunkFormDelete', 1, 'Chunks'),
('OnChunkFormDelete', 1, 'Chunks'),
('OnContextSave', 1, 'Contexts'),
('OnContextBeforeSave', 1, 'Contexts'),
('OnContextRemove', 1, 'Contexts'),
('OnContextBeforeRemove', 1, 'Contexts'),
('OnContextFormPrerender', 2, 'Contexts'),
('OnContextFormRender', 2, 'Contexts'),
('OnPluginSave', 1, 'Plugins'),
('OnPluginBeforeSave', 1, 'Plugins'),
('OnPluginRemove', 1, 'Plugins'),
('OnPluginBeforeRemove', 1, 'Plugins'),
('OnPluginFormPrerender', 1, 'Plugins'),
('OnPluginFormRender', 1, 'Plugins'),
('OnBeforePluginFormSave', 1, 'Plugins'),
('OnPluginFormSave', 1, 'Plugins'),
('OnBeforePluginFormDelete', 1, 'Plugins'),
('OnPluginFormDelete', 1, 'Plugins'),
('OnPropertySetSave', 1, 'Property Sets'),
('OnPropertySetBeforeSave', 1, 'Property Sets'),
('OnPropertySetRemove', 1, 'Property Sets'),
('OnPropertySetBeforeRemove', 1, 'Property Sets'),
('OnMediaSourceBeforeFormDelete', 1, 'Media Sources'),
('OnMediaSourceBeforeFormSave', 1, 'Media Sources'),
('OnMediaSourceGetProperties', 1, 'Media Sources'),
('OnMediaSourceFormDelete', 1, 'Media Sources'),
('OnMediaSourceFormSave', 1, 'Media Sources'),
('OnMediaSourceDuplicate', 1, 'Media Sources');

-- --------------------------------------------------------

--
-- Table structure for table `modx_system_settings`
--

CREATE TABLE IF NOT EXISTS `modx_system_settings` (
  `key` varchar(50) NOT NULL DEFAULT '',
  `value` text NOT NULL,
  `xtype` varchar(75) NOT NULL DEFAULT 'textfield',
  `namespace` varchar(40) NOT NULL DEFAULT 'core',
  `area` varchar(255) NOT NULL DEFAULT '',
  `editedon` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_system_settings`
--

INSERT INTO `modx_system_settings` (`key`, `value`, `xtype`, `namespace`, `area`, `editedon`) VALUES
('access_category_enabled', '1', 'combo-boolean', 'core', 'authentication', '0000-00-00 00:00:00'),
('access_context_enabled', '1', 'combo-boolean', 'core', 'authentication', '0000-00-00 00:00:00'),
('access_resource_group_enabled', '1', 'combo-boolean', 'core', 'authentication', '0000-00-00 00:00:00'),
('allow_forward_across_contexts', '', 'combo-boolean', 'core', 'system', '0000-00-00 00:00:00'),
('allow_manager_login_forgot_password', '1', 'combo-boolean', 'core', 'authentication', '0000-00-00 00:00:00'),
('allow_multiple_emails', '1', 'combo-boolean', 'core', 'authentication', '0000-00-00 00:00:00'),
('allow_tags_in_post', '', 'combo-boolean', 'core', 'system', '0000-00-00 00:00:00'),
('archive_with', '', 'combo-boolean', 'core', 'system', '0000-00-00 00:00:00'),
('auto_menuindex', '1', 'combo-boolean', 'core', 'site', '0000-00-00 00:00:00'),
('auto_check_pkg_updates', '1', 'combo-boolean', 'core', 'system', '0000-00-00 00:00:00'),
('auto_check_pkg_updates_cache_expire', '15', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('automatic_alias', '1', 'combo-boolean', 'core', 'furls', '0000-00-00 00:00:00'),
('base_help_url', '//rtfm.modx.com/display/revolution20/', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('blocked_minutes', '60', 'textfield', 'core', 'authentication', '0000-00-00 00:00:00'),
('cache_action_map', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_alias_map', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_context_settings', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_db', '0', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_db_expires', '0', 'textfield', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_db_session', '0', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_db_session_lifetime', '', 'textfield', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_default', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_disabled', '0', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_expires', '0', 'textfield', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_format', '0', 'textfield', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_handler', 'xPDOFileCache', 'textfield', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_lang_js', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_lexicon_topics', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_noncore_lexicon_topics', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_resource', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_resource_expires', '0', 'textfield', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_scripts', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('cache_system_settings', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('clear_cache_refresh_trees', '0', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('compress_css', '1', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('compress_js', '1', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('compress_js_max_files', '10', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('compress_js_groups', '', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('confirm_navigation', '1', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('container_suffix', '/', 'textfield', 'core', 'furls', '0000-00-00 00:00:00'),
('context_tree_sort', '', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('context_tree_sortby', 'rank', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('context_tree_sortdir', 'ASC', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('cultureKey', 'ru', 'modx-combo-language', 'core', 'language', '2015-03-24 12:46:27'),
('date_timezone', '', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('debug', '', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('default_duplicate_publish_option', 'preserve', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('default_media_source', '1', 'modx-combo-source', 'core', 'manager', '0000-00-00 00:00:00'),
('default_per_page', '20', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('default_context', 'web', 'modx-combo-context', 'core', 'site', '0000-00-00 00:00:00'),
('default_template', '1', 'modx-combo-template', 'core', 'site', '0000-00-00 00:00:00'),
('default_content_type', '1', 'modx-combo-content-type', 'core', 'site', '0000-00-00 00:00:00'),
('editor_css_path', '', 'textfield', 'core', 'editor', '0000-00-00 00:00:00'),
('editor_css_selectors', '', 'textfield', 'core', 'editor', '0000-00-00 00:00:00'),
('emailsender', 'admin@admin.ru', 'textfield', 'core', 'authentication', '2015-03-31 06:04:48'),
('emailsubject', 'Your login details', 'textfield', 'core', 'authentication', '0000-00-00 00:00:00'),
('enable_dragdrop', '1', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('error_page', '1', 'textfield', 'core', 'site', '0000-00-00 00:00:00'),
('failed_login_attempts', '5', 'textfield', 'core', 'authentication', '0000-00-00 00:00:00'),
('fe_editor_lang', 'en', 'modx-combo-language', 'core', 'language', '0000-00-00 00:00:00'),
('feed_modx_news', 'http://feeds.feedburner.com/modx-announce', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('feed_modx_news_enabled', '1', 'combo-boolean', 'core', 'system', '0000-00-00 00:00:00'),
('feed_modx_security', 'http://forums.modx.com/board.xml?board=294', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('feed_modx_security_enabled', '1', 'combo-boolean', 'core', 'system', '0000-00-00 00:00:00'),
('filemanager_path', '', 'textfield', 'core', 'file', '0000-00-00 00:00:00'),
('filemanager_path_relative', '1', 'combo-boolean', 'core', 'file', '0000-00-00 00:00:00'),
('filemanager_url', '', 'textfield', 'core', 'file', '0000-00-00 00:00:00'),
('filemanager_url_relative', '1', 'combo-boolean', 'core', 'file', '0000-00-00 00:00:00'),
('forgot_login_email', '<p>Hello [[+username]],</p>\n<p>A request for a password reset has been issued for your MODX user. If you sent this, you may follow this link and use this password to login. If you did not send this request, please ignore this email.</p>\n\n<p>\n    <strong>Activation Link:</strong> [[+url_scheme]][[+http_host]][[+manager_url]]?modahsh=[[+hash]]<br />\n    <strong>Username:</strong> [[+username]]<br />\n    <strong>Password:</strong> [[+password]]<br />\n</p>\n\n<p>After you log into the MODX Manager, you can change your password again, if you wish.</p>\n\n<p>Regards,<br />Site Administrator</p>', 'textarea', 'core', 'authentication', '0000-00-00 00:00:00'),
('form_customization_use_all_groups', '', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('forward_merge_excludes', 'type,published,class_key', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('friendly_alias_lowercase_only', '1', 'combo-boolean', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_alias_max_length', '0', 'textfield', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_alias_restrict_chars', 'pattern', 'textfield', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_alias_restrict_chars_pattern', '/[\\0\\x0B\\t\\n\\r\\f\\a&=+%#<>"~:`@\\?\\[\\]\\{\\}\\|\\^''\\\\]/', 'textfield', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_alias_strip_element_tags', '1', 'combo-boolean', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_alias_translit', 'none', 'textfield', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_alias_translit_class', 'translit.modTransliterate', 'textfield', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_alias_translit_class_path', '{core_path}components/', 'textfield', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_alias_trim_chars', '/.-_', 'textfield', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_alias_word_delimiter', '-', 'textfield', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_alias_word_delimiters', '-_', 'textfield', 'core', 'furls', '0000-00-00 00:00:00'),
('friendly_urls', '1', 'combo-boolean', 'core', 'furls', '2015-03-24 12:48:20'),
('friendly_urls_strict', '0', 'combo-boolean', 'core', 'furls', '0000-00-00 00:00:00'),
('global_duplicate_uri_check', '0', 'combo-boolean', 'core', 'furls', '0000-00-00 00:00:00'),
('hidemenu_default', '0', 'combo-boolean', 'core', 'site', '0000-00-00 00:00:00'),
('inline_help', '1', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('locale', '', 'textfield', 'core', 'language', '0000-00-00 00:00:00'),
('log_level', '1', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('log_target', 'FILE', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('link_tag_scheme', '-1', 'textfield', 'core', 'site', '0000-00-00 00:00:00'),
('lock_ttl', '360', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('mail_charset', 'UTF-8', 'modx-combo-charset', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_encoding', '8bit', 'textfield', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_use_smtp', '', 'combo-boolean', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_smtp_auth', '', 'combo-boolean', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_smtp_helo', '', 'textfield', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_smtp_hosts', 'localhost', 'textfield', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_smtp_keepalive', '', 'combo-boolean', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_smtp_pass', '', 'text-password', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_smtp_port', '587', 'textfield', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_smtp_prefix', '', 'textfield', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_smtp_single_to', '', 'combo-boolean', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_smtp_timeout', '10', 'textfield', 'core', 'mail', '0000-00-00 00:00:00'),
('mail_smtp_user', '', 'textfield', 'core', 'mail', '0000-00-00 00:00:00'),
('manager_date_format', 'Y-m-d', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('manager_favicon_url', '', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('manager_html5_cache', '0', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('manager_js_cache_file_locking', '1', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('manager_js_cache_max_age', '3600', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('manager_js_document_root', '', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('manager_js_zlib_output_compression', '0', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('manager_time_format', 'g:i a', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('manager_direction', 'ltr', 'textfield', 'core', 'language', '0000-00-00 00:00:00'),
('manager_lang_attribute', 'ru', 'textfield', 'core', 'language', '2015-03-24 12:46:27'),
('manager_language', 'ru', 'modx-combo-language', 'core', 'language', '2015-03-24 12:46:27'),
('manager_login_url_alternate', '', 'textfield', 'core', 'authentication', '0000-00-00 00:00:00'),
('manager_theme', 'default', 'modx-combo-manager-theme', 'core', 'manager', '0000-00-00 00:00:00'),
('manager_week_start', '0', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('modx_browser_default_sort', 'name', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('modx_browser_default_viewmode', 'grid', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('modx_charset', 'UTF-8', 'modx-combo-charset', 'core', 'language', '0000-00-00 00:00:00'),
('principal_targets', 'modAccessContext,modAccessResourceGroup,modAccessCategory,sources.modAccessMediaSource', 'textfield', 'core', 'authentication', '0000-00-00 00:00:00'),
('proxy_auth_type', 'BASIC', 'textfield', 'core', 'proxy', '0000-00-00 00:00:00'),
('proxy_host', '', 'textfield', 'core', 'proxy', '0000-00-00 00:00:00'),
('proxy_password', '', 'text-password', 'core', 'proxy', '0000-00-00 00:00:00'),
('proxy_port', '', 'textfield', 'core', 'proxy', '0000-00-00 00:00:00'),
('proxy_username', '', 'textfield', 'core', 'proxy', '0000-00-00 00:00:00'),
('password_generated_length', '8', 'textfield', 'core', 'authentication', '0000-00-00 00:00:00'),
('password_min_length', '8', 'textfield', 'core', 'authentication', '0000-00-00 00:00:00'),
('phpthumb_allow_src_above_docroot', '', 'combo-boolean', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_cache_maxage', '30', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_cache_maxsize', '100', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_cache_maxfiles', '10000', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_cache_source_enabled', '', 'combo-boolean', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_document_root', '', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_error_bgcolor', 'CCCCFF', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_error_textcolor', 'FF0000', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_error_fontsize', '1', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_far', 'C', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_imagemagick_path', '', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_nohotlink_enabled', '1', 'combo-boolean', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_nohotlink_erase_image', '1', 'combo-boolean', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_nohotlink_valid_domains', '{http_host}', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_nohotlink_text_message', 'Off-server thumbnailing is not allowed', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_nooffsitelink_enabled', '', 'combo-boolean', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_nooffsitelink_erase_image', '1', 'combo-boolean', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_nooffsitelink_require_refer', '', 'combo-boolean', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_nooffsitelink_text_message', 'Off-server linking is not allowed', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_nooffsitelink_valid_domains', '{http_host}', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_nooffsitelink_watermark_src', '', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('phpthumb_zoomcrop', '0', 'textfield', 'core', 'phpthumb', '0000-00-00 00:00:00'),
('publish_default', '', 'combo-boolean', 'core', 'site', '0000-00-00 00:00:00'),
('rb_base_dir', '', 'textfield', 'core', 'file', '0000-00-00 00:00:00'),
('rb_base_url', '', 'textfield', 'core', 'file', '0000-00-00 00:00:00'),
('request_controller', 'index.php', 'textfield', 'core', 'gateway', '0000-00-00 00:00:00'),
('request_method_strict', '0', 'combo-boolean', 'core', 'gateway', '0000-00-00 00:00:00'),
('request_param_alias', 'q', 'textfield', 'core', 'gateway', '0000-00-00 00:00:00'),
('request_param_id', 'id', 'textfield', 'core', 'gateway', '0000-00-00 00:00:00'),
('resolve_hostnames', '0', 'combo-boolean', 'core', 'system', '0000-00-00 00:00:00'),
('resource_tree_node_name', 'pagetitle', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('resource_tree_node_name_fallback', 'pagetitle', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('resource_tree_node_tooltip', '', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('richtext_default', '1', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('search_default', '1', 'combo-boolean', 'core', 'site', '0000-00-00 00:00:00'),
('server_offset_time', '0', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('server_protocol', 'http', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('session_cookie_domain', '', 'textfield', 'core', 'session', '0000-00-00 00:00:00'),
('session_cookie_lifetime', '604800', 'textfield', 'core', 'session', '0000-00-00 00:00:00'),
('session_cookie_path', '', 'textfield', 'core', 'session', '0000-00-00 00:00:00'),
('session_cookie_secure', '', 'combo-boolean', 'core', 'session', '0000-00-00 00:00:00'),
('session_cookie_httponly', '1', 'combo-boolean', 'core', 'session', '0000-00-00 00:00:00'),
('session_gc_maxlifetime', '604800', 'textfield', 'core', 'session', '0000-00-00 00:00:00'),
('session_handler_class', 'modSessionHandler', 'textfield', 'core', 'session', '0000-00-00 00:00:00'),
('session_name', '', 'textfield', 'core', 'session', '0000-00-00 00:00:00'),
('set_header', '1', 'combo-boolean', 'core', 'system', '0000-00-00 00:00:00'),
('show_tv_categories_header', '1', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('signupemail_message', '<p>Hello [[+uid]],</p>\n    <p>Here are your login details for the [[+sname]] MODX Manager:</p>\n\n    <p>\n        <strong>Username:</strong> [[+uid]]<br />\n        <strong>Password:</strong> [[+pwd]]<br />\n    </p>\n\n    <p>Once you log into the MODX Manager at [[+surl]], you can change your password.</p>\n\n    <p>Regards,<br />Site Administrator</p>', 'textarea', 'core', 'authentication', '0000-00-00 00:00:00'),
('site_name', 'Сайт проекта', 'textfield', 'core', 'site', '2015-03-30 07:23:09'),
('site_start', '1', 'textfield', 'core', 'site', '0000-00-00 00:00:00'),
('site_status', '1', 'combo-boolean', 'core', 'site', '0000-00-00 00:00:00'),
('site_unavailable_message', 'The site is currently unavailable', 'textfield', 'core', 'site', '0000-00-00 00:00:00'),
('site_unavailable_page', '0', 'textfield', 'core', 'site', '0000-00-00 00:00:00'),
('strip_image_paths', '1', 'combo-boolean', 'core', 'file', '0000-00-00 00:00:00'),
('symlink_merge_fields', '1', 'combo-boolean', 'core', 'site', '0000-00-00 00:00:00'),
('syncsite_default', '1', 'combo-boolean', 'core', 'caching', '0000-00-00 00:00:00'),
('topmenu_show_descriptions', '1', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('tree_default_sort', 'menuindex', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('tree_root_id', '0', 'numberfield', 'core', 'manager', '0000-00-00 00:00:00'),
('tvs_below_content', '0', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('udperms_allowroot', '', 'combo-boolean', 'core', 'authentication', '0000-00-00 00:00:00'),
('unauthorized_page', '1', 'textfield', 'core', 'site', '0000-00-00 00:00:00'),
('upload_files', 'txt,html,htm,xml,js,css,zip,gz,rar,z,tgz,tar,htaccess,mp3,mp4,aac,wav,au,wmv,avi,mpg,mpeg,pdf,doc,docx,xls,xlsx,ppt,pptx,jpg,jpeg,png,gif,psd,ico,bmp,odt,ods,odp,odb,odg,odf', 'textfield', 'core', 'file', '0000-00-00 00:00:00'),
('upload_flash', 'swf,fla', 'textfield', 'core', 'file', '0000-00-00 00:00:00'),
('upload_images', 'jpg,jpeg,png,gif,psd,ico,bmp', 'textfield', 'core', 'file', '0000-00-00 00:00:00'),
('upload_maxsize', '20971520', 'textfield', 'core', 'file', '2015-03-24 12:46:27'),
('upload_media', 'mp3,wav,au,wmv,avi,mpg,mpeg', 'textfield', 'core', 'file', '0000-00-00 00:00:00'),
('use_alias_path', '1', 'combo-boolean', 'core', 'furls', '2015-03-24 12:48:23'),
('use_browser', '1', 'combo-boolean', 'core', 'file', '0000-00-00 00:00:00'),
('use_editor', '1', 'combo-boolean', 'core', 'editor', '0000-00-00 00:00:00'),
('use_multibyte', '1', 'combo-boolean', 'core', 'language', '2015-03-24 12:46:27'),
('use_weblink_target', '', 'combo-boolean', 'core', 'site', '0000-00-00 00:00:00'),
('webpwdreminder_message', '<p>Hello [[+uid]],</p>\n\n    <p>To activate your new password click the following link:</p>\n\n    <p>[[+surl]]</p>\n\n    <p>If successful you can use the following password to login:</p>\n\n    <p><strong>Password:</strong> [[+pwd]]</p>\n\n    <p>If you did not request this email then please ignore it.</p>\n\n    <p>Regards,<br />\n    Site Administrator</p>', 'textarea', 'core', 'authentication', '0000-00-00 00:00:00'),
('websignupemail_message', '<p>Hello [[+uid]],</p>\n\n    <p>Here are your login details for [[+sname]]:</p>\n\n    <p><strong>Username:</strong> [[+uid]]<br />\n    <strong>Password:</strong> [[+pwd]]</p>\n\n    <p>Once you log into [[+sname]] at [[+surl]], you can change your password.</p>\n\n    <p>Regards,<br />\n    Site Administrator</p>', 'textarea', 'core', 'authentication', '0000-00-00 00:00:00'),
('welcome_screen', '', 'combo-boolean', 'core', 'manager', '2015-03-24 12:46:41'),
('welcome_screen_url', '//misc.modx.com/revolution/welcome.23.html', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('welcome_action', 'welcome', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('welcome_namespace', 'core', 'textfield', 'core', 'manager', '0000-00-00 00:00:00'),
('which_editor', 'TinyMCE RTE', 'modx-combo-rte', 'core', 'editor', '2015-03-25 10:53:24'),
('which_element_editor', 'Ace', 'modx-combo-rte', 'core', 'editor', '2015-03-24 12:53:48'),
('xhtml_urls', '1', 'combo-boolean', 'core', 'site', '0000-00-00 00:00:00'),
('enable_gravatar', '1', 'combo-boolean', 'core', 'manager', '0000-00-00 00:00:00'),
('auto_isfolder', '1', 'combo-boolean', 'core', 'site', '0000-00-00 00:00:00'),
('settings_version', '2.3.3-pl', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('settings_distro', 'traditional', 'textfield', 'core', 'system', '0000-00-00 00:00:00'),
('formit.recaptcha_public_key', '', 'textfield', 'formit', 'reCaptcha', '0000-00-00 00:00:00'),
('formit.recaptcha_private_key', '', 'textfield', 'formit', 'reCaptcha', '0000-00-00 00:00:00'),
('formit.recaptcha_use_ssl', '', 'combo-boolean', 'formit', 'reCaptcha', '0000-00-00 00:00:00'),
('formit.exclude_contexts', 'mgr', 'textfield', 'formit', '', '0000-00-00 00:00:00'),
('pdoTools.class', 'pdotools.pdotools', 'textfield', 'pdotools', 'pdotools_main', '0000-00-00 00:00:00'),
('pdoFetch.class', 'pdotools.pdofetch', 'textfield', 'pdotools', 'pdotools_main', '0000-00-00 00:00:00'),
('parser_class', 'pdoParser', 'textfield', 'pdotools', 'pdotools_main', '0000-00-00 00:00:00'),
('parser_class_path', '{core_path}components/pdotools/model/pdotools/', 'textfield', 'pdotools', 'pdotools_main', '0000-00-00 00:00:00'),
('ace.theme', 'twilight', 'textfield', 'ace', 'general', '2015-03-24 12:54:21'),
('ace.font_size', '13px', 'textfield', 'ace', 'general', '0000-00-00 00:00:00'),
('ace.word_wrap', '1', 'combo-boolean', 'ace', 'general', '2015-03-24 12:54:10'),
('ace.soft_tabs', '1', 'combo-boolean', 'ace', 'general', '0000-00-00 00:00:00'),
('ace.tab_size', '4', 'textfield', 'ace', 'general', '0000-00-00 00:00:00'),
('ace.fold_widgets', '1', 'combo-boolean', 'ace', 'general', '0000-00-00 00:00:00'),
('ace.show_invisibles', '0', 'combo-boolean', 'ace', 'general', '0000-00-00 00:00:00'),
('ace.snippets', '', 'textarea', 'ace', 'general', '0000-00-00 00:00:00'),
('ace.height', '', 'textfield', 'ace', 'general', '0000-00-00 00:00:00'),
('extension_packages', '[{"collections":{"path":"[[++core_path]]components/collections/model/"}},{"fileattach":{"path":"[[++core_path]]components/fileattach/model/"}}]', 'textfield', 'core', 'system', '2015-03-25 08:06:12'),
('collections.mgr_date_format', 'M d', 'textfield', 'collections', 'default', '0000-00-00 00:00:00'),
('collections.mgr_time_format', 'g:i a', 'textfield', 'collections', 'default', '0000-00-00 00:00:00'),
('collections.mgr_datetime_format', 'M d, g:i a', 'textfield', 'collections', 'default', '0000-00-00 00:00:00'),
('collections.user_js', '', 'textfield', 'collections', 'default', '0000-00-00 00:00:00'),
('collections.user_css', '', 'textfield', 'collections', 'default', '0000-00-00 00:00:00'),
('mgr_tree_icon_collectioncontainer', 'collectioncontainer', 'textfield', 'collections', 'default', '0000-00-00 00:00:00'),
('mgr_tree_icon_selectioncontainer', 'selectioncontainer', 'textfield', 'collections', 'default', '0000-00-00 00:00:00'),
('collections.renderer_image_path', '', 'textfield', 'collections', 'default', '0000-00-00 00:00:00'),
('fileattach.mediasource', '1', 'modx-combo-source', 'fileattach', '', '0000-00-00 00:00:00'),
('fileattach.files_path', 'assets/reportfiles/', 'textfield', 'fileattach', '', '2015-03-25 08:07:12'),
('fileattach.templates', '8', 'textfield', 'fileattach', '', '2015-03-25 08:08:38'),
('fileattach.user_folders', '', 'combo-boolean', 'fileattach', '', '0000-00-00 00:00:00'),
('fileattach.calchash', '', 'combo-boolean', 'fileattach', '', '0000-00-00 00:00:00'),
('fileattach.put_docid', '1', 'combo-boolean', 'fileattach', '', '2015-03-25 08:07:33'),
('fileattach.private', '', 'combo-boolean', 'fileattach', '', '0000-00-00 00:00:00'),
('fileattach.download', '1', 'combo-boolean', 'fileattach', '', '0000-00-00 00:00:00'),
('minifyx_process_registered', '', 'combo-boolean', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_process_images', '', 'combo-boolean', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_exclude_registered', '#(scripts|styles)_[a-z0-9]{10}\\.#i', 'textarea', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_exclude_images', '#(thumb|/\\d+x\\d+/)#i', 'textarea', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_images_filters', 's[true]', 'textfield', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_minifyJs', '', 'combo-boolean', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_minifyCss', '', 'combo-boolean', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_processRawJs', '', 'combo-boolean', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_processRawCss', '', 'combo-boolean', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_jsFilename', 'all', 'textfield', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_cssFilename', 'all', 'textfield', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('minifyx_cacheFolder', '/assets/components/minifyx/cache/', 'textfield', 'minifyx', 'minifyx_main', '0000-00-00 00:00:00'),
('tinymcerte.plugins', 'advlist autolink lists link image charmap print preview anchor visualblocks searchreplace code fullscreen insertdatetime media table contextmenu paste', 'textfield', 'tinymcerte', 'default', '0000-00-00 00:00:00'),
('tinymcerte.toolbar1', 'undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image', 'textfield', 'tinymcerte', 'tinymcerte.toolbar', '0000-00-00 00:00:00'),
('tinymcerte.toolbar2', '', 'textfield', 'tinymcerte', 'tinymcerte.toolbar', '0000-00-00 00:00:00'),
('tinymcerte.toolbar3', '', 'textfield', 'tinymcerte', 'tinymcerte.toolbar', '0000-00-00 00:00:00'),
('tinymcerte.menubar', 'file edit insert view format table tools', 'textfield', 'tinymcerte', 'default', '0000-00-00 00:00:00'),
('tinymcerte.statusbar', '1', 'combo-boolean', 'tinymcerte', 'default', '0000-00-00 00:00:00'),
('tinymcerte.image_advtab', '1', 'combo-boolean', 'tinymcerte', 'default', '0000-00-00 00:00:00'),
('tinymcerte.object_resizing', '1', 'textfield', 'tinymcerte', 'default', '0000-00-00 00:00:00'),
('tinymcerte.style_formats', '[{"title": "Headers", "items": "headers_format"},{"title": "Inline", "items": "inline_format"},{"title": "Blocks", "items": "blocks_format"},{"title": "Alignment", "items": "alignment_format"}]', 'textarea', 'tinymcerte', 'tinymcerte.style_formats', '0000-00-00 00:00:00'),
('tinymcerte.headers_format', '[{"title": "Header 1", "format": "h1"},{"title": "Header 2", "format": "h2"},{"title": "Header 3", "format": "h3"},{"title": "Header 4", "format": "h4"},{"title": "Header 5", "format": "h5"},{"title": "Header 6", "format": "h6"}]', 'textarea', 'tinymcerte', 'tinymcerte.style_formats', '0000-00-00 00:00:00'),
('tinymcerte.inline_format', '[{"title": "Bold", "icon": "bold", "format": "bold"},{"title": "Italic", "icon": "italic", "format": "italic"},{"title": "Underline", "icon": "underline", "format": "underline"},{"title": "Strikethrough", "icon": "strikethrough", "format": "strikethrough"},{"title": "Superscript", "icon": "superscript", "format": "superscript"},{"title": "Subscript", "icon": "subscript", "format": "subscript"},{"title": "Code", "icon": "code", "format": "code"}]', 'textarea', 'tinymcerte', 'tinymcerte.style_formats', '0000-00-00 00:00:00'),
('tinymcerte.blocks_format', '[{"title": "Paragraph", "format": "p"},{"title": "Blockquote", "format": "blockquote"},{"title": "Div", "format": "div"},{"title": "Pre", "format": "pre"}]', 'textarea', 'tinymcerte', 'tinymcerte.style_formats', '0000-00-00 00:00:00'),
('tinymcerte.alignment_format', '[{"title": "Left", "icon": "alignleft", "format": "alignleft"},{"title": "Center", "icon": "aligncenter", "format": "aligncenter"},{"title": "Right", "icon": "alignright", "format": "alignright"},{"title": "Justify", "icon": "alignjustify", "format": "alignjustify"}]', 'textarea', 'tinymcerte', 'tinymcerte.style_formats', '0000-00-00 00:00:00'),
('tinymcerte.paste_as_text', '', 'combo-boolean', 'tinymcerte', 'default', '0000-00-00 00:00:00'),
('tinymcerte.style_formats_merge', '', 'combo-boolean', 'tinymcerte', 'tinymcerte.style_formats', '0000-00-00 00:00:00'),
('clientconfig.admin_groups', 'Administrator', 'textfield', 'clientconfig', 'Default', '0000-00-00 00:00:00'),
('clientconfig.clear_cache', '1', 'combo-boolean', 'clientconfig', 'Default', '0000-00-00 00:00:00'),
('clientconfig.vertical_tabs', '', 'combo-boolean', 'clientconfig', 'Default', '0000-00-00 00:00:00'),
('clientconfig.google_fonts_api_key', '', 'textfield', 'clientconfig', 'Default', '0000-00-00 00:00:00');

-- --------------------------------------------------------

--
-- Table structure for table `modx_transport_packages`
--

CREATE TABLE IF NOT EXISTS `modx_transport_packages` (
  `signature` varchar(255) NOT NULL,
  `created` datetime NOT NULL,
  `updated` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `installed` datetime DEFAULT NULL,
  `state` tinyint(1) unsigned NOT NULL DEFAULT '1',
  `workspace` int(10) unsigned NOT NULL DEFAULT '0',
  `provider` int(10) unsigned NOT NULL DEFAULT '0',
  `disabled` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `source` tinytext,
  `manifest` text,
  `attributes` mediumtext,
  `package_name` varchar(255) NOT NULL,
  `metadata` text,
  `version_major` smallint(5) unsigned NOT NULL DEFAULT '0',
  `version_minor` smallint(5) unsigned NOT NULL DEFAULT '0',
  `version_patch` smallint(5) unsigned NOT NULL DEFAULT '0',
  `release` varchar(100) NOT NULL DEFAULT '',
  `release_index` smallint(5) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `modx_transport_packages`
--

INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('formit-2.2.2-pl', '2015-03-24 03:50:17', '2015-03-24 12:50:35', '2015-03-24 15:50:35', 0, 1, 1, 0, 'formit-2.2.2-pl.transport.zip', NULL, 'a:33:{s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:213:"--------------------\nSnippet: FormIt\n--------------------\nAuthor: Shaun McCormick <shaun@modx.com>\n\nA form processing Snippet for MODx Revolution.\n\nOfficial Documentation:\nhttp://rtfm.modx.com/display/ADDON/FormIt";s:9:"changelog";s:10968:"Changelog for FormIt.\n\nFormIt 2.2.2\n====================================\n- Added CMP for the saved forms\n- Fixed whitespace PR on required checkboxes\n\nFormIt 2.2.1\n====================================\n- Updated numbers generation for math captcha #5\n- German translation #10\n- Added missing formit.not_regexp lexicon #15\n- Specify explicitely return-path fixes #19 #20\n- fix addAttachment() typo #23\n- Fixed typo in adding of the attachments #24\n- Add the possibility of redirectTo=`formfield` #26\n- Added attachments for auto-reply and Added ability to use @CODE as tpl #29\n- Update snippet.formitisselected.php #12\n- Canadian options for FormitStateOptions\n\nFormIt 2.2.0\n====================================\n- [#8382] Prevent issue with checkboxes/radios causing text-parsing problems with required validator\n- Fixed issue with custom error message for vTextPasswordConfirm not respected\n- [#9457] Fixed issue with commas in values causing errors with FormItIsChecked & FormItIsSelected\n- [#9576] Add ability to translate country options\n- Add check for preHook errors before processing postHooks\n- Add option, defaulting true, to trim spaces from sides of values before validation\n- [#8785] Fix E_STRICT error in fiDictionary\n\nFormIt 2.1.2\n====================================\n- Various language updates\n- [#7250] Fix issue with 0 not passing :required filter\n\nFormIt 2.1.1\n====================================\n- [#8204] Fix issue with FormItAutoResponder and processing of MODX tags\n\nFormIt 2.1.0\n====================================\n- [#7620] Allow for MODX tags in email templates, as well as pass-through of snippet properties to tpl\n- [#7502] Add ability to find type of hook by using $hook->type\n- [#8151] More sanity checking for FormItAutoResponder and replyTo addresses\n- Fix useIsoCode issue in FormItCountryOptions\n- Update German translation\n- Enhance validation templating for validationErrorBulkTpl\n- Add &country option to FormItStateOptions to allow loading of non-US states (currently us/de)\n\nFormIt 2.0.3\n====================================\n- Update Czech translation\n- Fix issue with French accents in translation\n- [#6021] Refactor Russian reCaptcha translations\n- [#6618] Standardize XHTML in reCaptcha usage\n\nFormIt 2.0.2\n====================================\n- [#4864] Fix issue with isNumber not allowing blank fields\n- [#5404] Fix issues with checkboxes and array fields in FormItAutoResponder\n- [#5269] Fix issues with checkboxes in various forms in emails\n- [#5792] Update reCaptcha URLs\n\nFormIt 2.0.1\n====================================\n- [#5525] Add &allowFiles property, that when set to 0, prevents file submissions on form\n- [#5484] Fix issue with double validation error spans\n- Fix issue where config was not passed to hooks\n- Update German translation\n\nFormIt 2.0.0\n====================================\n- [#3514] Add ability to customize validator error messages per FormIt form and per field\n- [#4705] Add regexp validator\n- [#5454] Fix issue with customValidators property in 2.0.0-rc2\n- Major reworking of main FormIt script to be OOP\n- Add over 150 unit tests to prevent regression\n- [#5388], [#5240] Fix issue with FormItCountryOptions and &useIsoCode\n- Fix issue with FormItStateOptions and &useAbbr\n- [#5267] Fix issue with FormItRetriever and array fields\n\nFormIt 1.7.0\n====================================\n- Add ability to have "Frequent Visitors" optgroup in FormItCountryOptions, moving specified countries to the top of the list in an optgroup\n- Add missing property translations for FormItStateOptions snippet\n- Fix small issue with stored values after validation of fields\n- Add FormItStateOptions snippet for easy U.S. state dropdowns\n- Add FormItCountryOptions snippet for easy country dropdowns\n- [#5101] Fix issue with emailMultiSeparator and emailMultiWrapper default values\n- Fix issue with bracketed field names being added as extra fields post-validation with . prefix\n\nFormIt 1.6.0\n====================================\n- [#4708] Add support for bracketed fields, such as contact[name]\n- [#5038] Fix uninitialized variable warnings in reCaptcha service\n- [#4993] Add Italian translation and fix recaptcha links\n- Fix issue where fields could be removed via DOM from form and be bypassed\n- Add &emailMultiSeparator and &emailMultiWrapper for handling display of checkboxes/multi-selects in email hook\n\nFormIt 1.5.6\n====================================\n- [#4564] Fix redirectTo with non-web contexts\n\nFormIt 1.5.5\n====================================\n- [#4168] Add emailConvertNewlines property for handling newlines in HTML emails\n- [#4057] Prevent math hook from generating similar numbers\n- [#4302] Cleanups to FormItAutoResponder snippet\n- [#3991] Fix issue with checkbox values in emails\n\nFormIt 1.5.4\n====================================\n- Fix issue with math hook where error placeholders were incorrect\n- Fix issue where emailHtml property was not respected in email hook\n- Fix issue where hooks were not passed customProperties array\n- [#51] Allow blank fields to be passed with :email validator\n- [#55] Allow all fields to be accessed in custom validators\n\nFormIt 1.5.3\n====================================\n- [#40] Add ability to display all error messages in bulk at top, added validationErrorBulkTpl for templating each one\n- [#52] Add a general validation error message property, validationErrorMessage, that shows when validation fails\n- [#53] Fix bug that prevented recaptcha options from working\n- Add a generic validation error placeholder in FormIt to allow for general messages\n- [#50] Trim each hook specification in hooks calls\n- [#49] Ensure reCaptcha service instance is unique for each FormIt instance\n- [#47] Ensure email validator checks for empty string\n- [#42] Can now include field names in error strings via `field` placeholder\n- [#39] Fix issue with FormItIsChecked/Selected to prevent output from occurring if not checked\n- [#37] Fix allowTags validator to work, and work with parameters encapsulated by ^\n\nFormIt 1.5.2\n====================================\n- Fixed security vulnerability\n- Added math hook, allowing anti-spam math field measure\n- Added more debugging info to email hook\n\nFormIt 1.5.1\n====================================\n- Fixed issue where &store was not respecting values set in post-hooks\n- Redirect hook now redirects *after* all other hooks execute\n\nFormIt 1.5.0\n====================================\n- Fixed bug with redirectParams not parsing placeholders in the params\n- Added redirectParams property, which allows a JSON object of params to be passed when using redirect hook\n- Added spamCheckIp property, defaults to false, to check IP as well in spam hook\n- Fixed incorrect default param for fiarSender\n- Fixed error reporting for FormItAutoResponder\n- Added sanity checks to form attachments when dealing with missing names\n- Fixed invalid offset error in checkbox validation\n- Added recaptchaJS to allow for custom JS overriding of reCaptcha options var\n\nFormIt 1.4.1\n====================================\n- Added sanity check for emailHtml property on email hook\n- Added sanity check for replyto/cc/bcc emails on email hook\n- Added ability to change language via &language parameter\n\nFormIt 1.4.0\n====================================\n- Fixed bug with recaptcha and other hooks error display messages\n- Introduced &validate parameter for more secure validation parameters to prevent POST injection\n- Added FormItIsChecked and FormItIsSelected custom output filters for easier checkbox/radio/select handling of selected values\n- Added &placeholderPrefix for FormIt snippet, defaults to `fi.`\n\nFormIt 1.3.0\n====================================\n- Fixed issue with isNumber validator\n- Added FormItRetriever snippet to get data from a FormIt submission for thank you pages\n- Added extra API methods for custom hooks for easier data grabbing\n- Added FormItAutoResponder snippet to use as a custom hook for auto-responses\n- Added &successMessage and &successMessagePlaceholder properties for easier success message handling\n- Fixed ordering for &emailFrom property\n- Added width/height for reCaptcha, however, reCaptcha APIs prevent resizing via calls\n\nFormIt 1.2.1\n====================================\n- Added recaptchaTheme property, which allows theming of reCaptcha hook\n\nFormIt 1.2.0\n====================================\n- Added preHooks property to allow for custom snippets to pre-fill fields\n- Added clearFieldsOnSuccess property to clear fields after a successful form submission without a redirect\n- Allow placeholders of fields in all email properties\n- Added customValidators property to FormIt snippet to restrict custom validators to only specified validators to prevent brute force snippet loading\n- Added fiValidator::addError for easier error loading for custom validators\n- Added German translation\n\nFormIt 1.1.7\n====================================\n- Added bcc and cc properties for email hook\n\nFormIt 1.1.6\n====================================\n- i18n of Snippet properties\n- Added emailReplyToName and emailReplyTo properties for email hook\n- Removed SMTP settings as those are now in Revo\n- Fixed bug in html emails where linebreaks were being ignored\n- Added islowercase and isuppercase validators\n- Added multibyte support to validators\n\nFormIt 1.1.5\n====================================\n- Added Russian translation\n- Updated copyright information\n\nFormIt 1.1.4\n====================================\n- Fixed bug with isDate check\n- Migrated FormIt to Git\n- Fixed bug that caused validators to not fire\n- Fixed bug where custom validators were wonky, added ''errors'' references to custom hooks/validators\n- [#ADDON-147] Added support for validation and emailing of file fields\n- Added stripTags to all fields by default (unless ''allowTags'' hook is passed'') to prevent XSS\n- Added in missing settings\n- Added reCaptcha support via the recaptcha hook\n- Adjusted copyright information to reflect current year\n\nFormIt 1.0\n====================================\n- Fixed bug with emailFrom property getting overwritten\n- [#ADDON-122] Fixed incorrect message in spam lexicon item\n- Added ''spam'' hook that utilizes StopForumSpam spam filter. Will filter the fields in the property &spamEmailFields \n- Ensure hooks errors are set as placeholders\n- Aded fi.success placeholder to be set on a successful form submission if no redirect hook is specified \n- Added default to emailTpl property so that it is now no longer required. Will send out email with just field names and values.\n- Added Dutch translation\n- Added missing formit.contains lexicon entry\n- Fixed possible loophole with $this->fields and referencing in multiple hooks\n- Fixed bug on hooks due to !== and != difference\n- Added SMTP support to FormIt email hook\n- Fixed bug with emailFrom in email hook\n- Added emailUseFieldForSubject property to FormIt snippet\n- Fixed bug on email hook where if subject was passed through form, it wouldn''t set it as email subject\n- Added changelog\n";s:9:"signature";s:15:"formit-2.2.2-pl";s:13:"initialConfig";s:15:"[object Object]";s:4:"text";s:20:"Продолжить";s:2:"id";s:19:"package-install-btn";s:6:"hidden";s:5:"false";s:7:"handler";s:557:"function (va){var g=Ext.getCmp(''modx-package-grid'');if(!g)return false;var r=g.menu.record.data?g.menu.record.data:g.menu.record;var topic=''/workspace/package/install/''+r.signature+''/'';g.loadConsole(Ext.getBody(),topic);va=va||{};Ext.apply(va,{action:''workspace/packages/install'',signature:r.signature,register:''mgr'',topic:topic});MODx.Ajax.request({url:MODx.config.connector_url,params:va,listeners:{''success'':{fn:function(){this.activate();Ext.getCmp(''modx-package-grid'').refresh();},scope:this},''failure'':{fn:function(){this.activate();},scope:this}}});}";s:5:"scope";s:15:"[object Object]";s:8:"minWidth";s:2:"75";s:10:"removeMode";s:9:"container";s:10:"hideParent";s:4:"true";s:6:"events";s:15:"[object Object]";s:7:"ownerCt";s:15:"[object Object]";s:9:"container";s:15:"[object Object]";s:8:"rendered";s:4:"true";s:8:"template";s:15:"[object Object]";s:5:"btnEl";s:15:"[object Object]";s:4:"mons";s:15:"[object Object]";s:2:"el";s:15:"[object Object]";s:4:"icon";s:0:"";s:7:"iconCls";s:0:"";s:8:"boxReady";s:4:"true";s:8:"lastSize";s:15:"[object Object]";s:11:"useSetClass";s:4:"true";s:6:"oldCls";s:12:"x-btn-noicon";s:3:"doc";s:15:"[object Object]";s:19:"monitoringMouseOver";s:4:"true";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:43:"/workspace/package/install/formit-2.2.2-pl/";s:14:"package_action";i:0;}', 'FormIt', 'a:38:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"550add16dc532f210c000d7a";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:24:"4d556c62b2b083396d000b9c";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:15:"formit-2.2.2-pl";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:6:"FormIt";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"2.2.2";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"2";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"2";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"2";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:8:"vrelease";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:10;a:4:{s:4:"name";s:14:"vrelease_index";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:5:"sterc";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:818:"<p>Formit is an extra to create advanced web forms. Key features:</p><p><ul><li>Automatic validation and custom validator options</li><li>Auto reply to visitor + email to owner(s)</li><li>Multiple attachments</li><li>Submitted forms can be automatically saved in the Formit component</li><li>Submitted forms can be exported to CSV, based on filters</li><li>Redirect to thank-you pages for optimal tracking in your analytics software (e.g. Google Analytics funnels)</li><li>Add your own hooks as Snippets to handle forms dynamically</li><li>Spam protection</li><li>Dynamic country/state dropdown lists</li></ul></p>\n<p>Official documentation here (still being updated to 2.2.2 version):&nbsp;<a href="http://rtfm.modx.com/display/ADDON/FormIt" style="line-height: 1.5;">http://rtfm.modx.com/display/ADDON/FormIt</a></p>";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:38:"<p>Install via Package Management.</p>";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:6917:"<p></p><p><b>New in 2.2.2</b></p><p></p><ul></ul><p></p><ul><li>Added CMP for the saved forms</li><li>Fixed whitespace PR on required checkboxes</li></ul><p><b>New in 2.2.1</b></p><p></p><ul></ul><p></p><ul><li>Updated numbers generation for math captcha #5</li><li>German translation #10</li><li>Added missing formit.not_regexp lexicon #15</li><li>Specify explicitely return-path fixes #19 #20</li><li>fix addAttachment() typo #23</li><li>Fixed typo in adding of the attachments #24</li><li>Add the possibility of redirectTo=`formfield` #26</li><li>Added attachments for auto-reply and Added ability to use @CODE as tpl #29</li><li>Update snippet.formitisselected.php #12</li><li>Canadian options for FormitStateOptions</li></ul><p></p><p><b style="line-height: 1.5;">New in 2.2.0</b></p><p></p><ul><li>&#91;#8382&#93; Prevent issue with checkboxes/radios causing text-parsing problems with required validator</li><li>Fixed issue with custom error message for vTextPasswordConfirm not respected</li><li>&#91;#9457&#93; Fixed issue with commas in values causing errors with FormItIsChecked &amp; FormItIsSelected</li><li>&#91;#9576&#93; Add ability to translate country options</li><li>Add check for preHook errors before processing postHooks</li><li>Add option, defaulting true, to trim spaces from sides of values before validation</li><li>&#91;#8785&#93; Fix E_STRICT error in fiDictionary</li></ul><p></p><p><b>New in 2.1.2</b></p><p></p><ul><li>Various language updates</li><li>&#91;#7250&#93; Fix issue with 0 not passing :required filter</li></ul><p></p><p><b>New in 2.1.1</b></p><p></p><ul><li>&#91;#8204&#93; Fix issue with FormItAutoResponder and processing of MODX tags</li></ul><p></p><p><b>New in 2.1.0</b></p><p></p><ul><li>&#91;#7620&#93; Allow for MODX tags in email templates, as well as pass-through of snippet properties to tpl</li><li>&#91;#7502&#93; Add ability to find type of hook by using $hook-&gt;type</li><li>&#91;#8151&#93; More sanity checking for FormItAutoResponder and replyTo addresses</li><li>Fix useIsoCode issue in FormItCountryOptions</li><li>Update German translation</li><li>Enhance validation templating for validationErrorBulkTpl</li><li>Add &amp;country option to FormItStateOptions to allow loading of non-US states (currently us/de)</li></ul><p></p><p><b>New in 2.0.3</b></p><p></p><ul><li>Update Czech translation</li><li>Fix issue with French accents in translation</li><li>&#91;#6021&#93; Refactor Russian reCaptcha translations</li><li>&#91;#6618&#93; Standardize XHTML in reCaptcha usage</li></ul><p></p><p><b>New in 2.0.2</b></p><p></p><ul><li>&#91;#4864&#93; Fix issue with isNumber not allowing blank fields</li><li>&#91;#5404&#93; Fix issues with checkboxes and array fields in FormItAutoResponder</li><li>&#91;#5269&#93; Fix issues with checkboxes in various forms in emails</li><li>&#91;#5792&#93; Update reCaptcha URLs</li></ul><p></p><p><b>New in 2.0.1</b></p><ul><li>&#91;#5525&#93; Add &amp;allowFiles property, that when set to 0, prevents file submissions on form</li><li>&#91;#5484&#93; Fix issue with double validation error spans</li><li>Fix issue where config was not passed to hooks</li><li>Update German translation</li></ul><p></p><p><b>New in 2.0.0</b></p><p></p><ul><li>&#91;#3514&#93; Add ability to customize validator error messages per FormIt form and per field</li><li>&#91;#4705&#93; Add regexp validator</li><li>&#91;#5454&#93; Fix issue with customValidators property in 2.0.0-rc2</li><li>Fix issue with reCaptcha loading in 2.0.0-rc1</li><li>Major reworking of main FormIt script to be OOP</li><li>Add over 150 unit tests to prevent regression</li><li>&#91;#5388&#93;, &#91;#5240&#93; Fix issue with FormItCountryOptions and &amp;useIsoCode</li><li>Fix issue with FormItStateOptions and &amp;useAbbr</li><li>&#91;#5267&#93; Fix issue with FormItRetriever and array fields</li></ul><p></p><p><b>New in 1.7.0</b></p><p></p><ul><li>Add ability to have "Frequent Visitors" optgroup in FormItCountryOptions, moving specified countries to the top of the list in an optgroup</li><li>Add missing property translations for FormItStateOptions snippet</li><li>Fix small issue with stored values after validation of fields</li><li>Add FormItStateOptions snippet for easy U.S. state dropdowns</li><li>Add FormItCountryOptions snippet for easy country dropdowns</li><li>&#91;#5101&#93; Fix issue with emailMultiSeparator and emailMultiWrapper default values</li><li>Fix issue with bracketed field names being added as extra fields post-validation with . prefix</li></ul><p></p><p><b>New in 1.6.0</b></p><p></p><ul><li>&#91;#4708&#93; Add support for bracketed fields, such as contact&#91;name&#93;</li><li>&#91;#5038&#93; Fix uninitialized variable warnings in reCaptcha service</li><li>&#91;#4993&#93; Add Italian translation and fix recaptcha links</li><li>Fix issue where fields could be removed via DOM from form and be bypassed</li><li>Add &amp;emailMultiSeparator and &amp;emailMultiWrapper properties for handling display of checkboxes/multi-selects in email hook</li></ul><p></p><p><b>New in 1.5.6</b></p><p></p><ul><li>&#91;#4564&#93; Fix redirectTo with non-web contexts</li></ul><p></p><p><b>New in 1.5.5</b></p><ul><li>&#91;#4168&#93; Add emailConvertNewlines property for handling newlines in HTML emails</li><li>&#91;#4057&#93; Prevent math hook from generating similar numbers</li><li>&#91;#4302&#93; Cleanups to FormItAutoResponder snippet</li><li>&#91;#3991&#93; Fix issue with checkbox values in emails</li></ul><p></p><p><b>New in 1.5.4</b></p><p></p>\n<ul>\n<li>Fix issue with math hook where error placeholders were incorrect</li><li>Fix issue where emailHtml property was not respected in email hook</li><li>Fix issue where hooks were not passed customProperties array</li><li>&#91;#51&#93; Allow blank fields to be passed with :email validator</li>\n<li>&#91;#55&#93; Allow all fields to be accessed in custom validators</li>\n</ul>\n<p><b>New in 1.5.3</b></p>\n<ul>\n<li>&#91;#40&#93; Add ability to display all error messages in bulk at top, added validationErrorBulkTpl for templating each one</li>\n<li>&#91;#52&#93; Add a general validation error message property, validationErrorMessage, that shows when validation fails</li>\n<li>&#91;#53&#93; Fix bug that prevented recaptcha options from working</li>\n<li>Add a generic validation error placeholder in FormIt to allow for general messages</li>\n<li>&#91;#50&#93; Trim each hook specification in hooks calls</li>\n<li>&#91;#49&#93; Ensure reCaptcha service instance is unique for each FormIt instance</li>\n<li>&#91;#47&#93; Ensure email validator checks for empty string</li>\n<li>&#91;#42&#93; Can now include field names in error strings via `field` placeholder</li>\n<li>&#91;#39&#93; Fix issue with FormItIsChecked/Selected to prevent output from occurring if not checked</li>\n<li>&#91;#37&#93; Fix allowTags validator to work, and work with parameters encapsulated by ^</li>\n</ul>";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-03-19T14:28:38+0000";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:5:"sterc";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-03-24T12:47:36+0000";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-03-19T14:28:38+0000";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:6:"144814";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:21;a:4:{s:4:"name";s:7:"audited";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:25;a:3:{s:4:"name";s:7:"smf_url";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:24:"4d4c3fa6b2b0830da9000001";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=550add19dc532f210c000d7c";s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:15:"formit-2.2.2-pl";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:12:"mysql,sqlsrv";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:9:"breaks_at";s:10:"attributes";a:0:{}s:4:"text";s:8:"10000000";s:8:"children";a:0:{}}i:33;a:3:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:34;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:7:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"550add19dc532f210c000d7c";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:24:"550add16dc532f210c000d7a";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:8:"filename";s:10:"attributes";a:0:{}s:4:"text";s:29:"formit-2.2.2-pl.transport.zip";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"1121";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:6:"lastip";s:10:"attributes";a:0:{}s:4:"text";s:13:"78.32.131.177";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=550add19dc532f210c000d7c";s:8:"children";a:0:{}}}}i:35;a:4:{s:4:"name";s:17:"package-signature";s:10:"attributes";a:0:{}s:4:"text";s:15:"formit-2.2.2-pl";s:8:"children";a:0:{}}i:36;a:4:{s:4:"name";s:10:"categories";s:10:"attributes";a:0:{}s:4:"text";s:5:"forms";s:8:"children";a:0:{}}i:37;a:3:{s:4:"name";s:4:"tags";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}}', 2, 2, 2, 'pl', 0);
INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('pdotools-1.10.1-pl', '2015-03-24 03:51:24', '2015-03-24 12:51:35', '2015-03-24 15:51:35', 0, 1, 2, 0, 'pdotools-1.10.1-pl.transport.zip', NULL, 'a:10:{s:9:"changelog";s:13053:"Changelog for pdoTools.\n\n1.10.1 pl\n==============\n- [#108] [pdoFetch] Fixed E_ERROR when using &sortbyTV.\n- [pdoFetch] Added new parameter &sortbyTVType.\n- [pdoFetch] If &sortdirTV is not set it will be equal to &sortdir.\n\n1.10.0 pl\n==============\n- [pdoMenu] Returned and fixed parameter &showDeleted.\n- [pdoPage] Improved default javascript.\n- [pdoPage] Fixed overwriting &frontend_js and &frontend_css parameters when &ajax is disabled.\n- [pdoFetch] Ability to specify functions in select fields.\n- [pdoTools] Ability to use compound quick placeholders.\n\n1.10.0 beta4\n==============\n- [pdoPage] Ajax pagination out from the box.\n- [pdoFetch] Improved log of getCollection.\n- [pdoTools] Added tplOperator "contains".\n\n1.9.7 pl\n==============\n- [#99] [pdoFetch] Fixed returning of primary key in "ids" mode.\n- [#97] [pdoTools] Fixed default tplPath for @FILE chunks.\n- [#85] [pdoFetch] Added function getChildIds().\n- [pdoFetch] Disabled "total" placeholder for &return=`ids`.\n\n1.9.6 pl2\n==============\n- [pdoFetch] Fixed exclusion of field "id" in custom classes.\n- [pdoMenu] Improved parameter &countChildren.\n- [#100] [pdoMenu] Removed parameter &showDeleted because it not working.\n\n1.9.6 rc\n==============\n- Added execution of SQL_BIG_SELECTS = 1 before query.\n- [pdoPage] Added parameter &ajax for supporting of ajax requests.\n\n1.9.5 pl1\n==============\n- Rolled back #72 due to issues in pdoMenu.\n\n1.9.5 pl\n==============\n- Added ability to return JSON or serialized string from pdoFetch::run().\n- [#83] [pdoMenu] Added level placeholder to outer templates.\n- [#82] [pdoFetch] Added support for complex &where parameter.\n- [#81] [pdoPage] Improved handling of arrays in url.\n- [#77] Fixed making of url for modWebLink to another context.\n- [#72] [pdoTools] Fixed order for children of excluded parents in buildTree.\n- [#60] [pdoMenu] Fixed parameter &tplCategoryFolder.\n- [#57] [pdoMenu] Improved placeholder [[+children]].\n- [#57] [pdoMenu] Added parameter &countChildren.\n\n1.9.4 pl1\n==============\n- [#78] [pdoNeighbors] Added parameter &loop=`1` for looping links.\n- [pdoSitemap] Fixed possible E_FATAL php-apc.\n\n1.9.3 pl1\n==============\n- [pdoTools] Ability to specify value for empty quick placeholders.\n- [pdoTools] Ability to use INLINE snippets and filters.\n- [pdoFetch] Improved loading of 3rd party models.\n- [pdoPage] Fixed E_WARNING when &limit=`0`.\n\n1.9.2 pl2\n==============\n- [#56] [pdoParser] Fixed wrong links processing.\n- [#53] Improved loading of classes.\n- [pdoField] Rolled back to original logic of "top" and "topLevel" parameters due to issues.\n- [pdoField] Added parameter "ultimate" to emulate logic of UltimateParent.\n\n1.9.1 pl6\n==============\n- [pdoFetch] Adding alias of main class of query to "sortby" if no alias exists.\n- [pdoFetch] Improved selecting of all fields of class with specified alias.\n- [pdoField] Parameter "topLevel" works exactly as in UltimateParent.\n- [pdoField] Parameter "top" without "topLevel" returns parent on "top" level.\n\n1.9.1 pl\n==============\n- [#47] [pdoMenu] Fixed processing &tplOuter when output is empty.\n- [#46] [pdoParser] Fixed processing of TVs with dots in name.\n- [#44] [pdoMenu] Improved handling of Wayfinder parameters "includeDocs" and "excludeDocs".\n- [#37] [pdoField] get the default, only if the field was empty.\n- [#34] Fixed processing of "modSymLink" documents.\n- [#32] Improved cache methods.\n- [#26] Replaced FIND_IN_SET() to FIELD().\n- [pdoFetch] Ability to work with objects, that has multiple primary keys.\n- [pdoPage] New parameter &cacheAnonymous.\n- [pdoMenu] New parameter &cacheAnonymous.\n- Added aliases for sort query in order of specified &resources: "ids" or "resources".\n- Removed unnecessary query in pdoFetch::getCollection().\n- Improved pdoFetch::getCollection().\n- Renamed pdoFetch::getObject() to getArray(). Now it uses getCollection for retrieve results.\n- pdoTools::setCache() now returns cacheKey.\n- pdoFetch::getObject() is now alias of pdoFetch::getArray().\n\n1.9.0 pl2\n==============\n- [pdoMenu] Chunks of parents and categories are now depends on the descendants and ignores parameter isfolder.\n- [pdoNeighbors] Speed improvements.\n- [#27] Ability to specify custom pdoFetch and pdoTools classes through FQN system settings.\n- [pdoParser] Handles TVs in resource tags.\n- [pdoParser] Handles output filters.\n- [pdoFetch] Improved method "addTVFilters", that used by "tvFilters" parameter in pdoResources.\n- [pdoSitemap] Pass the whole row so we can use more columns.\n\n1.9.0 rc\n==============\n- Improved method pdoTools::getChunk().\n- Improved method pdoTools::parseChunk().\n- Improved method pdoTools::fastProcess().\n- Improved method pdoTools::makePlaceholders().\n- Accelerated snippet pdoNeighbors.\n- Fixed bug in pdoUsers when usersgroups was specified by names.\n- getObject and getCollection() runs in separate instance.\n- Added pdoParser with FastField tags.\n- [pdoPage] Changed default value of parameter "totalVar" due to issues.\n- [#24] Fixed prepareTVs and empty tvPrefix.\n- [#23] [pdoResources] Ability to return ids to placeholder.\n- Fixed warning when getObject returns false.\n- Fixed placeholders prefix in recursive makePlaceholders.\n\n1.8.9 pl4\n==============\n- Added german lexicon.\n- [#20] Ability to specify not JSON string in &where=``.\n- [pdoPage] Added parameter "pageCountVar" for specifying name of variable with number of pages.\n- [pdoPage] Support Bootstrap3.\n- [pdoField] Ability to specify class for fetching field.\n- Improved joining of tables in pdoFetch.\n- Added preparing and processing TVs in getObject and getCollection methods.\n- Improved load of 3rd party models.\n\n1.8.8 pl2\n==============\n- Rewrited cache of snippets "pdoMenu" and "pdoPage".\n- New methods pdoTools::getCache() and pdoTools::setCache().\n- [pdoMenu] Fixed parameter "tplParentRowActive".\n- [#18] Fixed "idx" in pdoTools::defineChunk().\n\n1.8.7 pl\n==============\n- Added boolean parameter "decodeJSON" to specify whether or not decode JSON in results rows.\n- Removed default "sortby" and "sortdir" from class pdoFetch for better work of getCollection() method.\n\n1.8.6 pl2\n==============\n- Fixed possibly E_NOTICE when site has no extension packages installed.\n- [#17] [pdoMenu] Added placeholder [[+wf.menutitle]].\n- [#16] [pdoMenu] Disabled status verification of specified parents.\n- [#13] [pdoMenu] Improved work with root of multiple contexts.\n- [pdoMenu] Fixed bug when specified parent has only the one child.\n- [pdoResources] Added parameter "&useWeblink" and placeholder "[[+link]]". It is disabled by default.\n\n1.8.5 pl\n==============\n- [#15] [pdoPage] Improved generation of links to pages.\n- [pdoMenu] Improved processing of classes "modSymlink" and "modWeblink".\n- [pdoBreadcrumbs] Improved processing of classes "modSymlink" and "modWeblink". Added parameter "&useWeblink".\n- [pdoNeighbors] Added parameter "&useWeblink" and placeholder "[[+link]]".\n- [pdoSitemap] Added parameter "&useWeblink" and proper processing of classes "modSymlink" and "modWeblink".\n\n1.8.4 pl\n==============\n- [pdoCrumbs] Added ability to specify the crumbs root (defaulting to site_start)\n- [pdoCrumbs] Added ability to specify class_key (ie. to generate crumbs only for derivative classes)\n- More accuracy when try to decode json in fetch results.\n\n1.8.3 pl3\n==============\n- Improved preparation of template variables.\n- Improved transfer of additional parameters from snippet to results.\n- [pdoMenu] Added lexicon entries for parameters.\n- [pdoMenu] Allow to specify "limit" and "offset".\n- [#12] Added parameter "toPlaceholder".\n- Increased accuracy of timings log.\n\n1.8.1 pl2\n==============\n- Accelerated method pdoTools::getChunk().\n- Added snippet pdoMenu.\n- Added support for tags [^qt^] and [^q^].\n\n1.8.0 pl\n==============\n- [#10] [pdoPage] Added placeholder "page".\n- [#9] [pdoPage] Added placeholder "pageCount".\n- [#8] Improved support of big numbers when sorting by TVs.\n- Fixed work of pdoPage when it called multiple times on page.\n- Fixed mistype in pdoFetch::getCollection().\n\n1.8.0 rc5\n==============\n- Added processing of JSON fields. For example, you can use [[+extended.keyname]] in chunks of pdoUsers.\n- pdoTools was removed from system extension packages, but you can still use "$modx->getService(''pdoFetch'');".\n- Fixed getting chunk without any parameters.\n- Added snippet pdoPage.\n\n1.8.0 beta1\n==============\n- Improved handling of "default_text" parameter in TVs.\n- Fixed and improved method pdoTools::buildTree().\n- The logic of build the conditions of the query moved into new method pdoFetch::additionalConditions().\n- Improved method pdoFetch::addSelects().\n- Improved method pdoFetch::addSort().\n- Improved some snippets in accordance to new abilities of pdoFetch: pdoResources, pdoNeighbors and pdoSitemap.\n\n1.7.4 pl\n==============\n- [#7] [pdoSitemap] Fixed hidden parameters "&sortBy" and "&sortDir" that used for compatibility with GoogleSiteMap.\n\n1.7.3 pl1\n==============\n- [pdoCrumbs] Fixed possible E_NOTICE on line 157.\n- [pdoCrumbs] Fixed generation of link to site start in relative mode.\n- [#6] pdoCrumbs and pdoNeighbors are now uses "menutitle" by default. If it is empty, will be used "pagetitle".\n\n1.7.2 pl1\n==============\n- [pdoField] Added new parameters: "default=``" and "&field=``".\n- [pdoField] Improved logic of "&top=``" and "&topLevel=``".\n- Added 2 new methods: pdoFetch::getObject() and pdoFetch::getCollection().\n- Ability to send arrays into common config parameters. JSON is still supported.\n- Improved select of default values in TVs.\n\n1.7.1 pl\n==============\n- [pdoCrumbs] Fixed work with "modSymLink" and "modWebLink" resources.\n\n1.7.0 pl1\n==============\n- New snippet pdoCrumbs.\n- New snippet pdoField.\n- New snippet pdoSitemap.\n- New snippet pdoNeighbors.\n- Ability to specify snippet for preparation of fetched rows by parameter "&prepareSnippet=``".\n- Added method pdoTools::checkPermissions() for checking user privileges to view the results.\n- Added @TEMPLATE binding. You can use name or id of any template. If empty - will use template of each row.\n- [pdoResources] Improved parameter "&context".\n- [pdoResources] Script properties are now passed to chunks. You can send any placeholders to it.\n\n1.6.0 pl1\n==============\n- Fixed compatibility issues in PHP < 5.3.\n\n1.6.0 pl\n==============\n- Added parameter "&loadModels" for comma-separated list of 3rd party components that needed for query.\n- Added parameters "&prepareTVs" and "&processTVs".\n- Added parameters "&tvFilters", "&tvFiltersAndDelimiter" and "&tvFiltersAndDelimiter".\n- Added support of parameters "&sortbyTV" and "&sortdirTV" for compatibility with getResources.\n- Added ability to use @INLINE and @FILE bindings in all template parameters.\n- Removed method pdoTools::getPlaceholders.\n\n1.5.0 pl2\n==============\n- Fixed sort of decimals in TVs.\n\n1.5.0 pl1\n==============\n- Added processing of simple [[~id]] placeholders in fastMode.\n- Added support of default value for TVs.\n- Improved sort by TVs of types "number" and "date".\n\n1.5.0 rc\n==============\n- [pdoUsers] Added new snippet "pdoUsers".\n- [pdoResources] Fixed "toSeparatePlaceholders".\n- [pdoResources] Parameter "parents" now supports dash prefix for excluding resources from query by parent.\n- [pdoResources] Fixed issue when snippet runs multiple times at one page.\n\n1.4.1 pl1\n==============\n- Improved "context" processing.\n- Fixed "idx" when multiple snippets called at one page.\n- Fixed default sortby when joined tables exists.\n\n1.4.1 beta3\n==============\n- Added parameters "tplCondition", "tplOperator" and "conditionalTpls".\n- Added parameter "select" for specifying needed columns of selected tables. Can be a JSON string with array.\n- Added parameter "toSeparatePlaceholders".\n- Improved "pdoResources" snippet.\n\n1.4.0 beta1\n==============\n- Ability to specify JSON string in "sortby", for example "&sortby=`{"pagetitle":"asc","createdon":"desc"}`"\n- Added automatic replacement of tvs in "where" and "having" parameters.\n- Added automatic replacement of tvs in "sortby" parameter.\n- Removed example snippet\n- Added snippet "pdoResources", that could replace "getResources".\n- Added method pdoTools::defineChunk() for chunk of given idx.\n- Added "memory usage" in log.\n\n1.3.0\n==============\n- Improved placeholders processing when fastMode is enabled.\n- Added support of "having" conditions.\n\n1.2.1\n==============\n- Fixed not working "includeTVs" when "leftJoin" is empty.\n\n1.2.0\n==============\n- Native render of quick placeholders, such as "<!--pdotools_introtext <blockquote>[[+introtext]]</blockquote>-->".\n- Added joining of TVs in pdoFetch. Use parameter "includeTVs" with comma-separated list of template variables.\n- Added method pdoFetch::setConfig() for proper setting options when you run multiple pdoTools snippets at the one page.\n- Method pdoTools::makeArray is now recursive, for processing a multidimensional arrays of values.\n\n1.1.0\n==============\n- Improved getChunk function.\n\n1.0.1\n==============\n- Fixed setting total in "chunks" mode.\n- Improved displaying "where" condition in log.\n\n1.0.0\n==============\n- Initial release.";s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:646:"--------------------\npdoTools\n--------------------\nAuthor: Vasiliy Naumkin <bezumkin@yandex.ru>\n--------------------\n\nSmall library for creating fast snippets for MODX Revolution that works through PDO.\n\nRequired by Tickets and miniShop2.\n\nMain features\n- Builds queries with xPDO.\n- Retrieve results with PDO.\n- Improved pdoTools::getChunk() function, that processing placeholders faster, than original modX::getChunk().\n\npdoTools snippets will work so faster, than more fields you will retrieve from database at one query.\n\n--------------------\nFeel free to suggest ideas/improvements/bugs on GitHub:\nhttp://github.com/bezumkin/pdoTools/issues\n";s:13:"setup-options";s:36:"pdotools-1.10.1-pl/setup-options.php";s:9:"signature";s:18:"pdotools-1.10.1-pl";s:9:"pdoParser";s:1:"1";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:46:"/workspace/package/install/pdotools-1.10.1-pl/";s:14:"package_action";i:0;}', 'pdoTools', 'a:36:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:1:"6";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:8:"pdoTools";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:117:"Микро-библиотека для быстрой выборки данных из СУБД MySql через PDO.";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:1:"6";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:19:"2013-05-14 17:36:22";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:19:"0000-00-00 00:00:00";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:88:"https://store.simpledream.ru/assets/uploadify/f/f/e/ffe1e89f12c51f01ad55ce39b88731b1.jpg";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:4:"link";s:10:"attributes";a:0:{}s:4:"text";s:33:"http://bezumkin.ru/modx/pdotools/";s:8:"children";a:0:{}}i:10;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"9188";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:6:"active";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:8:"resource";s:10:"attributes";a:0:{}s:4:"text";s:2:"26";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:1:"6";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:6:"1.10.1";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:2:"10";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:21;a:3:{s:4:"name";s:13:"release_index";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:18:"pdotools-1.10.1-pl";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:1:"-";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:15009:"Changelog for pdoTools.<br />\n<br />\n1.10.1 pl<br />\n==============<br />\n- [#108] [pdoFetch] Fixed E_ERROR when using &sortbyTV.<br />\n- [pdoFetch] Added new parameter &sortbyTVType.<br />\n- [pdoFetch] If &sortdirTV is not set it will be equal to &sortdir.<br />\n<br />\n1.10.0 pl<br />\n==============<br />\n- [pdoMenu] Returned and fixed parameter &showDeleted.<br />\n- [pdoPage] Improved default javascript.<br />\n- [pdoPage] Fixed overwriting &frontend_js and &frontend_css parameters when &ajax is disabled.<br />\n- [pdoFetch] Ability to specify functions in select fields.<br />\n- [pdoTools] Ability to use compound quick placeholders.<br />\n<br />\n1.10.0 beta4<br />\n==============<br />\n- [pdoPage] Ajax pagination out from the box.<br />\n- [pdoFetch] Improved log of getCollection.<br />\n- [pdoTools] Added tplOperator "contains".<br />\n<br />\n1.9.7 pl<br />\n==============<br />\n- [#99] [pdoFetch] Fixed returning of primary key in "ids" mode.<br />\n- [#97] [pdoTools] Fixed default tplPath for @FILE chunks.<br />\n- [#85] [pdoFetch] Added function getChildIds().<br />\n- [pdoFetch] Disabled "total" placeholder for &return=`ids`.<br />\n<br />\n1.9.6 pl2<br />\n==============<br />\n- [pdoFetch] Fixed exclusion of field "id" in custom classes.<br />\n- [pdoMenu] Improved parameter &countChildren.<br />\n- [#100] [pdoMenu] Removed parameter &showDeleted because it not working.<br />\n<br />\n1.9.6 rc<br />\n==============<br />\n- Added execution of SQL_BIG_SELECTS = 1 before query.<br />\n- [pdoPage] Added parameter &ajax for supporting of ajax requests.<br />\n<br />\n1.9.5 pl1<br />\n==============<br />\n- Rolled back #72 due to issues in pdoMenu.<br />\n<br />\n1.9.5 pl<br />\n==============<br />\n- Added ability to return JSON or serialized string from pdoFetch::run().<br />\n- [#83] [pdoMenu] Added level placeholder to outer templates.<br />\n- [#82] [pdoFetch] Added support for complex &where parameter.<br />\n- [#81] [pdoPage] Improved handling of arrays in url.<br />\n- [#77] Fixed making of url for modWebLink to another context.<br />\n- [#72] [pdoTools] Fixed order for children of excluded parents in buildTree.<br />\n- [#60] [pdoMenu] Fixed parameter &tplCategoryFolder.<br />\n- [#57] [pdoMenu] Improved placeholder [[+children]].<br />\n- [#57] [pdoMenu] Added parameter &countChildren.<br />\n<br />\n1.9.4 pl1<br />\n==============<br />\n- [#78] [pdoNeighbors] Added parameter &loop=`1` for looping links.<br />\n- [pdoSitemap] Fixed possible E_FATAL php-apc.<br />\n<br />\n1.9.3 pl1<br />\n==============<br />\n- [pdoTools] Ability to specify value for empty quick placeholders.<br />\n- [pdoTools] Ability to use INLINE snippets and filters.<br />\n- [pdoFetch] Improved loading of 3rd party models.<br />\n- [pdoPage] Fixed E_WARNING when &limit=`0`.<br />\n<br />\n1.9.2 pl2<br />\n==============<br />\n- [#56] [pdoParser] Fixed wrong links processing.<br />\n- [#53] Improved loading of classes.<br />\n- [pdoField] Rolled back to original logic of "top" and "topLevel" parameters due to issues.<br />\n- [pdoField] Added parameter "ultimate" to emulate logic of UltimateParent.<br />\n<br />\n1.9.1 pl6<br />\n==============<br />\n- [pdoFetch] Adding alias of main class of query to "sortby" if no alias exists.<br />\n- [pdoFetch] Improved selecting of all fields of class with specified alias.<br />\n- [pdoField] Parameter "topLevel" works exactly as in UltimateParent.<br />\n- [pdoField] Parameter "top" without "topLevel" returns parent on "top" level.<br />\n<br />\n1.9.1 pl<br />\n==============<br />\n- [#47] [pdoMenu] Fixed processing &tplOuter when output is empty.<br />\n- [#46] [pdoParser] Fixed processing of TVs with dots in name.<br />\n- [#44] [pdoMenu] Improved handling of Wayfinder parameters "includeDocs" and "excludeDocs".<br />\n- [#37] [pdoField] get the default, only if the field was empty.<br />\n- [#34] Fixed processing of "modSymLink" documents.<br />\n- [#32] Improved cache methods.<br />\n- [#26] Replaced FIND_IN_SET() to FIELD().<br />\n- [pdoFetch] Ability to work with objects, that has multiple primary keys.<br />\n- [pdoPage] New parameter &cacheAnonymous.<br />\n- [pdoMenu] New parameter &cacheAnonymous.<br />\n- Added aliases for sort query in order of specified &resources: "ids" or "resources".<br />\n- Removed unnecessary query in pdoFetch::getCollection().<br />\n- Improved pdoFetch::getCollection().<br />\n- Renamed pdoFetch::getObject() to getArray(). Now it uses getCollection for retrieve results.<br />\n- pdoTools::setCache() now returns cacheKey.<br />\n- pdoFetch::getObject() is now alias of pdoFetch::getArray().<br />\n<br />\n1.9.0 pl2<br />\n==============<br />\n- [pdoMenu] Chunks of parents and categories are now depends on the descendants and ignores parameter isfolder.<br />\n- [pdoNeighbors] Speed improvements.<br />\n- [#27] Ability to specify custom pdoFetch and pdoTools classes through FQN system settings.<br />\n- [pdoParser] Handles TVs in resource tags.<br />\n- [pdoParser] Handles output filters.<br />\n- [pdoFetch] Improved method "addTVFilters", that used by "tvFilters" parameter in pdoResources.<br />\n- [pdoSitemap] Pass the whole row so we can use more columns.<br />\n<br />\n1.9.0 rc<br />\n==============<br />\n- Improved method pdoTools::getChunk().<br />\n- Improved method pdoTools::parseChunk().<br />\n- Improved method pdoTools::fastProcess().<br />\n- Improved method pdoTools::makePlaceholders().<br />\n- Accelerated snippet pdoNeighbors.<br />\n- Fixed bug in pdoUsers when usersgroups was specified by names.<br />\n- getObject and getCollection() runs in separate instance.<br />\n- Added pdoParser with FastField tags.<br />\n- [pdoPage] Changed default value of parameter "totalVar" due to issues.<br />\n- [#24] Fixed prepareTVs and empty tvPrefix.<br />\n- [#23] [pdoResources] Ability to return ids to placeholder.<br />\n- Fixed warning when getObject returns false.<br />\n- Fixed placeholders prefix in recursive makePlaceholders.<br />\n<br />\n1.8.9 pl4<br />\n==============<br />\n- Added german lexicon.<br />\n- [#20] Ability to specify not JSON string in &where=``.<br />\n- [pdoPage] Added parameter "pageCountVar" for specifying name of variable with number of pages.<br />\n- [pdoPage] Support Bootstrap3.<br />\n- [pdoField] Ability to specify class for fetching field.<br />\n- Improved joining of tables in pdoFetch.<br />\n- Added preparing and processing TVs in getObject and getCollection methods.<br />\n- Improved load of 3rd party models.<br />\n<br />\n1.8.8 pl2<br />\n==============<br />\n- Rewrited cache of snippets "pdoMenu" and "pdoPage".<br />\n- New methods pdoTools::getCache() and pdoTools::setCache().<br />\n- [pdoMenu] Fixed parameter "tplParentRowActive".<br />\n- [#18] Fixed "idx" in pdoTools::defineChunk().<br />\n<br />\n1.8.7 pl<br />\n==============<br />\n- Added boolean parameter "decodeJSON" to specify whether or not decode JSON in results rows.<br />\n- Removed default "sortby" and "sortdir" from class pdoFetch for better work of getCollection() method.<br />\n<br />\n1.8.6 pl2<br />\n==============<br />\n- Fixed possibly E_NOTICE when site has no extension packages installed.<br />\n- [#17] [pdoMenu] Added placeholder [[+wf.menutitle]].<br />\n- [#16] [pdoMenu] Disabled status verification of specified parents.<br />\n- [#13] [pdoMenu] Improved work with root of multiple contexts.<br />\n- [pdoMenu] Fixed bug when specified parent has only the one child.<br />\n- [pdoResources] Added parameter "&useWeblink" and placeholder "[[+link]]". It is disabled by default.<br />\n<br />\n1.8.5 pl<br />\n==============<br />\n- [#15] [pdoPage] Improved generation of links to pages.<br />\n- [pdoMenu] Improved processing of classes "modSymlink" and "modWeblink".<br />\n- [pdoBreadcrumbs] Improved processing of classes "modSymlink" and "modWeblink". Added parameter "&useWeblink".<br />\n- [pdoNeighbors] Added parameter "&useWeblink" and placeholder "[[+link]]".<br />\n- [pdoSitemap] Added parameter "&useWeblink" and proper processing of classes "modSymlink" and "modWeblink".<br />\n<br />\n1.8.4 pl<br />\n==============<br />\n- [pdoCrumbs] Added ability to specify the crumbs root (defaulting to site_start)<br />\n- [pdoCrumbs] Added ability to specify class_key (ie. to generate crumbs only for derivative classes)<br />\n- More accuracy when try to decode json in fetch results.<br />\n<br />\n1.8.3 pl3<br />\n==============<br />\n- Improved preparation of template variables.<br />\n- Improved transfer of additional parameters from snippet to results.<br />\n- [pdoMenu] Added lexicon entries for parameters.<br />\n- [pdoMenu] Allow to specify "limit" and "offset".<br />\n- [#12] Added parameter "toPlaceholder".<br />\n- Increased accuracy of timings log.<br />\n<br />\n1.8.1 pl2<br />\n==============<br />\n- Accelerated method pdoTools::getChunk().<br />\n- Added snippet pdoMenu.<br />\n- Added support for tags [^qt^] and [^q^].<br />\n<br />\n1.8.0 pl<br />\n==============<br />\n- [#10] [pdoPage] Added placeholder "page".<br />\n- [#9] [pdoPage] Added placeholder "pageCount".<br />\n- [#8] Improved support of big numbers when sorting by TVs.<br />\n- Fixed work of pdoPage when it called multiple times on page.<br />\n- Fixed mistype in pdoFetch::getCollection().<br />\n<br />\n1.8.0 rc5<br />\n==============<br />\n- Added processing of JSON fields. For example, you can use [[+extended.keyname]] in chunks of pdoUsers.<br />\n- pdoTools was removed from system extension packages, but you can still use "$modx->getService(''pdoFetch'');".<br />\n- Fixed getting chunk without any parameters.<br />\n- Added snippet pdoPage.<br />\n<br />\n1.8.0 beta1<br />\n==============<br />\n- Improved handling of "default_text" parameter in TVs.<br />\n- Fixed and improved method pdoTools::buildTree().<br />\n- The logic of build the conditions of the query moved into new method pdoFetch::additionalConditions().<br />\n- Improved method pdoFetch::addSelects().<br />\n- Improved method pdoFetch::addSort().<br />\n- Improved some snippets in accordance to new abilities of pdoFetch: pdoResources, pdoNeighbors and pdoSitemap.<br />\n<br />\n1.7.4 pl<br />\n==============<br />\n- [#7] [pdoSitemap] Fixed hidden parameters "&sortBy" and "&sortDir" that used for compatibility with GoogleSiteMap.<br />\n<br />\n1.7.3 pl1<br />\n==============<br />\n- [pdoCrumbs] Fixed possible E_NOTICE on line 157.<br />\n- [pdoCrumbs] Fixed generation of link to site start in relative mode.<br />\n- [#6] pdoCrumbs and pdoNeighbors are now uses "menutitle" by default. If it is empty, will be used "pagetitle".<br />\n<br />\n1.7.2 pl1<br />\n==============<br />\n- [pdoField] Added new parameters: "default=``" and "&field=``".<br />\n- [pdoField] Improved logic of "&top=``" and "&topLevel=``".<br />\n- Added 2 new methods: pdoFetch::getObject() and pdoFetch::getCollection().<br />\n- Ability to send arrays into common config parameters. JSON is still supported.<br />\n- Improved select of default values in TVs.<br />\n<br />\n1.7.1 pl<br />\n==============<br />\n- [pdoCrumbs] Fixed work with "modSymLink" and "modWebLink" resources.<br />\n<br />\n1.7.0 pl1<br />\n==============<br />\n- New snippet pdoCrumbs.<br />\n- New snippet pdoField.<br />\n- New snippet pdoSitemap.<br />\n- New snippet pdoNeighbors.<br />\n- Ability to specify snippet for preparation of fetched rows by parameter "&prepareSnippet=``".<br />\n- Added method pdoTools::checkPermissions() for checking user privileges to view the results.<br />\n- Added @TEMPLATE binding. You can use name or id of any template. If empty - will use template of each row.<br />\n- [pdoResources] Improved parameter "&context".<br />\n- [pdoResources] Script properties are now passed to chunks. You can send any placeholders to it.<br />\n<br />\n1.6.0 pl1<br />\n==============<br />\n- Fixed compatibility issues in PHP < 5.3.<br />\n<br />\n1.6.0 pl<br />\n==============<br />\n- Added parameter "&loadModels" for comma-separated list of 3rd party components that needed for query.<br />\n- Added parameters "&prepareTVs" and "&processTVs".<br />\n- Added parameters "&tvFilters", "&tvFiltersAndDelimiter" and "&tvFiltersAndDelimiter".<br />\n- Added support of parameters "&sortbyTV" and "&sortdirTV" for compatibility with getResources.<br />\n- Added ability to use @INLINE and @FILE bindings in all template parameters.<br />\n- Removed method pdoTools::getPlaceholders.<br />\n<br />\n1.5.0 pl2<br />\n==============<br />\n- Fixed sort of decimals in TVs.<br />\n<br />\n1.5.0 pl1<br />\n==============<br />\n- Added processing of simple [[~id]] placeholders in fastMode.<br />\n- Added support of default value for TVs.<br />\n- Improved sort by TVs of types "number" and "date".<br />\n<br />\n1.5.0 rc<br />\n==============<br />\n- [pdoUsers] Added new snippet "pdoUsers".<br />\n- [pdoResources] Fixed "toSeparatePlaceholders".<br />\n- [pdoResources] Parameter "parents" now supports dash prefix for excluding resources from query by parent.<br />\n- [pdoResources] Fixed issue when snippet runs multiple times at one page.<br />\n<br />\n1.4.1 pl1<br />\n==============<br />\n- Improved "context" processing.<br />\n- Fixed "idx" when multiple snippets called at one page.<br />\n- Fixed default sortby when joined tables exists.<br />\n<br />\n1.4.1 beta3<br />\n==============<br />\n- Added parameters "tplCondition", "tplOperator" and "conditionalTpls".<br />\n- Added parameter "select" for specifying needed columns of selected tables. Can be a JSON string with array.<br />\n- Added parameter "toSeparatePlaceholders".<br />\n- Improved "pdoResources" snippet.<br />\n<br />\n1.4.0 beta1<br />\n==============<br />\n- Ability to specify JSON string in "sortby", for example "&sortby=`{"pagetitle":"asc","createdon":"desc"}`"<br />\n- Added automatic replacement of tvs in "where" and "having" parameters.<br />\n- Added automatic replacement of tvs in "sortby" parameter.<br />\n- Removed example snippet<br />\n- Added snippet "pdoResources", that could replace "getResources".<br />\n- Added method pdoTools::defineChunk() for chunk of given idx.<br />\n- Added "memory usage" in log.<br />\n<br />\n1.3.0<br />\n==============<br />\n- Improved placeholders processing when fastMode is enabled.<br />\n- Added support of "having" conditions.<br />\n<br />\n1.2.1<br />\n==============<br />\n- Fixed not working "includeTVs" when "leftJoin" is empty.<br />\n<br />\n1.2.0<br />\n==============<br />\n- Native render of quick placeholders, such as "<!--pdotools_introtext <blockquote>[[+introtext]]</blockquote>-->".<br />\n- Added joining of TVs in pdoFetch. Use parameter "includeTVs" with comma-separated list of template variables.<br />\n- Added method pdoFetch::setConfig() for proper setting options when you run multiple pdoTools snippets at the one page.<br />\n- Method pdoTools::makeArray is now recursive, for processing a multidimensional arrays of values.<br />\n<br />\n1.1.0<br />\n==============<br />\n- Improved getChunk function.<br />\n<br />\n1.0.1<br />\n==============<br />\n- Fixed setting total in "chunks" mode.<br />\n- Improved displaying "where" condition in log.<br />\n<br />\n1.0.0<br />\n==============<br />\n- Initial release.";s:8:"children";a:0:{}}i:25;a:4:{s:4:"name";s:10:"releasedby";s:10:"attributes";a:0:{}s:4:"text";s:1:"6";s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:19:"2015-02-27 09:18:56";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:3:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:10:"version_id";s:10:"attributes";a:0:{}s:4:"text";s:3:"372";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:29:"Василий Наумкин";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:18:"pdotools-1.10.1-pl";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:5:"mysql";s:8:"children";a:0:{}}i:34;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:113:"http://modstore.pro/extras/download?package_id=6&version_id=372&username=&api_key=&http_host=visualisation.wi6.ru";s:8:"children";a:0:{}}i:35;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:2:{i:0;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:113:"http://modstore.pro/extras/download?package_id=6&version_id=372&username=&api_key=&http_host=visualisation.wi6.ru";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}}}}', 1, 10, 1, 'pl', 0);
INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('ajaxform-1.0.4-pl', '2015-03-24 03:51:45', '2015-03-24 12:52:14', '2015-03-24 15:52:14', 0, 1, 1, 0, 'ajaxform-1.0.4-pl.transport.zip', NULL, 'a:33:{s:9:"changelog";s:1046:"Changelog for AjaxForm.\n\n1.0.4-pl\n==============\n- Added checking of global js var "afValidated" before form submit.\n\n1.0.3-pl\n==============\n- [#8] Improved regular expression.\n- Improved compatibility with parameter "submitVar" in snippet FormIt.\n\n1.0.2-pl\n==============\n- Added jQuery event "af_complete" on form submit.\n- [#4] Ability to use @INLINE chunk in parameter &form, if you have pdoTools installed.\n- [#3] Ability to set placeholders in form by specifying them into script parameters.\n- [#2] Script will add class "error" to elements with ".error_[name_of_field]" elements in form.\n\n1.0.1-pl\n==============\n- Possibly fix for Error 500 on some hosts.\n\n1.0.0-pl\n==============\n- Call end snippet on page load for preparation of form. Now you can use hook "math".\n\n1.0.0-rc\n==============\n- Force attribute "method=post" to form.\n- Added support for sending form without javascript.\n\n1.0.0-beta1\n==============\n- Improved adding class "ajax_form" to form.\n- Improved snippet parameters.\n\n1.0.0-beta0\n==============\n- Initial release.\n";s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:636:"--------------------\nAjaxForm\n--------------------\nAuthor: Vasiliy Naumkin <bezumkin@yandex.ru>\n--------------------\n\nSimple component for MODX Revolution, that allows you to send any form through ajax.\n\n\nQuick start\n1. Create new chunk with name "myForm".\n2. Add form into that chunk.\n3. Call AjaxForm at any page [[!AjaxForm?form=`myForm`&snippet=`FormIt`]]\n\nYou can specify any parameters for end snippet:\n[[!AjaxForm?\n	&form=`myForm`\n	&snippet=`FormIt`\n	&hooks=`email`\n	&emailto=`info@mysite.com`\n	&etc=`...`\n]]\n\n--------------------\nFeel free to suggest ideas/improvements/bugs on GitHub:\nhttp://github.com/bezumkin/AjaxForm/issues";s:9:"signature";s:17:"ajaxform-1.0.4-pl";s:13:"initialConfig";s:15:"[object Object]";s:4:"text";s:20:"Продолжить";s:2:"id";s:19:"package-install-btn";s:6:"hidden";s:5:"false";s:7:"handler";s:557:"function (va){var g=Ext.getCmp(''modx-package-grid'');if(!g)return false;var r=g.menu.record.data?g.menu.record.data:g.menu.record;var topic=''/workspace/package/install/''+r.signature+''/'';g.loadConsole(Ext.getBody(),topic);va=va||{};Ext.apply(va,{action:''workspace/packages/install'',signature:r.signature,register:''mgr'',topic:topic});MODx.Ajax.request({url:MODx.config.connector_url,params:va,listeners:{''success'':{fn:function(){this.activate();Ext.getCmp(''modx-package-grid'').refresh();},scope:this},''failure'':{fn:function(){this.activate();},scope:this}}});}";s:5:"scope";s:15:"[object Object]";s:8:"minWidth";s:2:"75";s:10:"removeMode";s:9:"container";s:10:"hideParent";s:4:"true";s:6:"events";s:15:"[object Object]";s:7:"ownerCt";s:15:"[object Object]";s:9:"container";s:15:"[object Object]";s:8:"rendered";s:4:"true";s:8:"template";s:15:"[object Object]";s:5:"btnEl";s:15:"[object Object]";s:4:"mons";s:15:"[object Object]";s:2:"el";s:15:"[object Object]";s:4:"icon";s:0:"";s:7:"iconCls";s:0:"";s:8:"boxReady";s:4:"true";s:8:"lastSize";s:15:"[object Object]";s:11:"useSetClass";s:4:"true";s:6:"oldCls";s:12:"x-btn-noicon";s:3:"doc";s:15:"[object Object]";s:19:"monitoringMouseOver";s:4:"true";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:45:"/workspace/package/install/ajaxform-1.0.4-pl/";s:14:"package_action";i:0;}', 'AjaxForm', 'a:38:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"548bbf40dc532f2c590499cd";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:24:"5279c6d462cf24078e000edb";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:17:"ajaxform-1.0.4-pl";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:8:"AjaxForm";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"1.0.4";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"4";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:8:"vrelease";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:10;a:4:{s:4:"name";s:14:"vrelease_index";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:9:"bezumkin2";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:110:"<p>1.0.4-pl</p><p>==============</p><p>- Added checking of global js var "afValidated" before form submit.</p>";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:427:"<p>1. Create new chunk with name "myForm".</p><p>2. Add form into that chunk.</p><p>3. Call AjaxForm at any page &#91;&#91;!AjaxForm?form=`myForm`&amp;snippet=`FormIt`&#93;&#93;</p><p></p><p>You can specify any parameters for end snippet:</p><p>&#91;&#91;!AjaxForm?</p><p>	&amp;form=`myForm`</p><p>	&amp;snippet=`FormIt`</p><p>	&amp;hooks=`email`</p><p>	&amp;emailto=`info@mysite.com`</p><p>	&amp;etc=`...`</p><p>&#93;&#93;</p>";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:1345:"<p>Changelog for AjaxForm.</p><p></p><p>1.0.4-pl</p><p>==============</p><p>- Added checking of global js var "afValidated" before form submit.</p><p></p><p>1.0.3-pl</p><p>==============</p><p>- &#91;#8&#93; Improved regular expression.</p><p>- Improved compatibility with parameter "submitVar" in snippet FormIt.</p><p></p><p>1.0.2-pl</p><p>==============</p><p>- Added jQuery event "af_complete" on form submit.</p><p>- &#91;#4&#93; Ability to use @INLINE chunk in parameter &amp;form, if you have pdoTools installed.</p><p>- &#91;#3&#93; Ability to set placeholders in form by specifying them into script parameters.</p><p>- &#91;#2&#93; Script will add class "error" to elements with ".error_&#91;name_of_field&#93;" elements in form.</p><p></p><p>1.0.1-pl</p><p>==============</p><p>- Possibly fix for Error 500 on some hosts.</p><p></p><p>1.0.0-pl</p><p>==============</p><p>- Call end snippet on page load for preparation of form. Now you can use hook "math".</p><p></p><p>1.0.0-rc</p><p>==============</p><p>- Force attribute "method=post" to form.</p><p>- Added support for sending form without javascript.</p><p></p><p>1.0.0-beta1</p><p>==============</p><p>- Improved adding class "ajax_form" to form.</p><p>- Improved snippet parameters.</p><p></p><p>1.0.0-beta0</p><p>==============</p><p>- Initial release.</p><p></p><p></p><p></p>";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2014-12-13T04:23:28+0000";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:9:"bezumkin2";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-03-24T12:45:20+0000";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2014-12-13T04:23:28+0000";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"4987";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:21;a:4:{s:4:"name";s:7:"audited";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:25;a:3:{s:4:"name";s:7:"smf_url";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:24:"4d4c3fa6b2b0830da9000001";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=548bbf41dc532f2c590499cf";s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:17:"ajaxform-1.0.4-pl";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:5:"mysql";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:9:"breaks_at";s:10:"attributes";a:0:{}s:4:"text";s:8:"10000000";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:97:"http://modx.s3.amazonaws.com/extras/5279c6d462cf24078e000edb/d63189e2a01262b59fd82452eab9307d.jpg";s:8:"children";a:0:{}}i:34;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:7:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"548bbf41dc532f2c590499cf";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:24:"548bbf40dc532f2c590499cd";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:8:"filename";s:10:"attributes";a:0:{}s:4:"text";s:31:"ajaxform-1.0.4-pl.transport.zip";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"1623";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:6:"lastip";s:10:"attributes";a:0:{}s:4:"text";s:13:"185.6.127.248";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=548bbf41dc532f2c590499cf";s:8:"children";a:0:{}}}}i:35;a:4:{s:4:"name";s:17:"package-signature";s:10:"attributes";a:0:{}s:4:"text";s:17:"ajaxform-1.0.4-pl";s:8:"children";a:0:{}}i:36;a:4:{s:4:"name";s:10:"categories";s:10:"attributes";a:0:{}s:4:"text";s:25:"commenting-feedback,forms";s:8:"children";a:0:{}}i:37;a:3:{s:4:"name";s:4:"tags";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}}', 1, 0, 4, 'pl', 0);
INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('ace-1.5.0-pl', '2015-03-24 03:53:22', '2015-03-24 12:53:48', '2015-03-24 15:53:48', 0, 1, 1, 0, 'ace-1.5.0-pl.transport.zip', NULL, 'a:33:{s:7:"license";s:15504:"GNU GENERAL PUBLIC LICENSE\r\n   Version 2, June 1991\r\n--------------------------\r\n\r\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\r\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\r\n\r\nEveryone is permitted to copy and distribute verbatim copies\r\nof this license document, but changing it is not allowed.\r\n\r\nPreamble\r\n--------\r\n\r\n  The licenses for most software are designed to take away your\r\nfreedom to share and change it.  By contrast, the GNU General Public\r\nLicense is intended to guarantee your freedom to share and change free\r\nsoftware--to make sure the software is free for all its users.  This\r\nGeneral Public License applies to most of the Free Software\r\nFoundation''s software and to any other program whose authors commit to\r\nusing it.  (Some other Free Software Foundation software is covered by\r\nthe GNU Library General Public License instead.)  You can apply it to\r\nyour programs, too.\r\n\r\n  When we speak of free software, we are referring to freedom, not\r\nprice.  Our General Public Licenses are designed to make sure that you\r\nhave the freedom to distribute copies of free software (and charge for\r\nthis service if you wish), that you receive source code or can get it\r\nif you want it, that you can change the software or use pieces of it\r\nin new free programs; and that you know you can do these things.\r\n\r\n  To protect your rights, we need to make restrictions that forbid\r\nanyone to deny you these rights or to ask you to surrender the rights.\r\nThese restrictions translate to certain responsibilities for you if you\r\ndistribute copies of the software, or if you modify it.\r\n\r\n  For example, if you distribute copies of such a program, whether\r\ngratis or for a fee, you must give the recipients all the rights that\r\nyou have.  You must make sure that they, too, receive or can get the\r\nsource code.  And you must show them these terms so they know their\r\nrights.\r\n\r\n  We protect your rights with two steps: (1) copyright the software, and\r\n(2) offer you this license which gives you legal permission to copy,\r\ndistribute and/or modify the software.\r\n\r\n  Also, for each author''s protection and ours, we want to make certain\r\nthat everyone understands that there is no warranty for this free\r\nsoftware.  If the software is modified by someone else and passed on, we\r\nwant its recipients to know that what they have is not the original, so\r\nthat any problems introduced by others will not reflect on the original\r\nauthors'' reputations.\r\n\r\n  Finally, any free program is threatened constantly by software\r\npatents.  We wish to avoid the danger that redistributors of a free\r\nprogram will individually obtain patent licenses, in effect making the\r\nprogram proprietary.  To prevent this, we have made it clear that any\r\npatent must be licensed for everyone''s free use or not licensed at all.\r\n\r\n  The precise terms and conditions for copying, distribution and\r\nmodification follow.\r\n\r\n\r\nGNU GENERAL PUBLIC LICENSE\r\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\r\n---------------------------------------------------------------\r\n\r\n  0. This License applies to any program or other work which contains\r\na notice placed by the copyright holder saying it may be distributed\r\nunder the terms of this General Public License.  The "Program", below,\r\nrefers to any such program or work, and a "work based on the Program"\r\nmeans either the Program or any derivative work under copyright law:\r\nthat is to say, a work containing the Program or a portion of it,\r\neither verbatim or with modifications and/or translated into another\r\nlanguage.  (Hereinafter, translation is included without limitation in\r\nthe term "modification".)  Each licensee is addressed as "you".\r\n\r\nActivities other than copying, distribution and modification are not\r\ncovered by this License; they are outside its scope.  The act of\r\nrunning the Program is not restricted, and the output from the Program\r\nis covered only if its contents constitute a work based on the\r\nProgram (independent of having been made by running the Program).\r\nWhether that is true depends on what the Program does.\r\n\r\n  1. You may copy and distribute verbatim copies of the Program''s\r\nsource code as you receive it, in any medium, provided that you\r\nconspicuously and appropriately publish on each copy an appropriate\r\ncopyright notice and disclaimer of warranty; keep intact all the\r\nnotices that refer to this License and to the absence of any warranty;\r\nand give any other recipients of the Program a copy of this License\r\nalong with the Program.\r\n\r\nYou may charge a fee for the physical act of transferring a copy, and\r\nyou may at your option offer warranty protection in exchange for a fee.\r\n\r\n  2. You may modify your copy or copies of the Program or any portion\r\nof it, thus forming a work based on the Program, and copy and\r\ndistribute such modifications or work under the terms of Section 1\r\nabove, provided that you also meet all of these conditions:\r\n\r\n    a) You must cause the modified files to carry prominent notices\r\n    stating that you changed the files and the date of any change.\r\n\r\n    b) You must cause any work that you distribute or publish, that in\r\n    whole or in part contains or is derived from the Program or any\r\n    part thereof, to be licensed as a whole at no charge to all third\r\n    parties under the terms of this License.\r\n\r\n    c) If the modified program normally reads commands interactively\r\n    when run, you must cause it, when started running for such\r\n    interactive use in the most ordinary way, to print or display an\r\n    announcement including an appropriate copyright notice and a\r\n    notice that there is no warranty (or else, saying that you provide\r\n    a warranty) and that users may redistribute the program under\r\n    these conditions, and telling the user how to view a copy of this\r\n    License.  (Exception: if the Program itself is interactive but\r\n    does not normally print such an announcement, your work based on\r\n    the Program is not required to print an announcement.)\r\n\r\nThese requirements apply to the modified work as a whole.  If\r\nidentifiable sections of that work are not derived from the Program,\r\nand can be reasonably considered independent and separate works in\r\nthemselves, then this License, and its terms, do not apply to those\r\nsections when you distribute them as separate works.  But when you\r\ndistribute the same sections as part of a whole which is a work based\r\non the Program, the distribution of the whole must be on the terms of\r\nthis License, whose permissions for other licensees extend to the\r\nentire whole, and thus to each and every part regardless of who wrote it.\r\n\r\nThus, it is not the intent of this section to claim rights or contest\r\nyour rights to work written entirely by you; rather, the intent is to\r\nexercise the right to control the distribution of derivative or\r\ncollective works based on the Program.\r\n\r\nIn addition, mere aggregation of another work not based on the Program\r\nwith the Program (or with a work based on the Program) on a volume of\r\na storage or distribution medium does not bring the other work under\r\nthe scope of this License.\r\n\r\n  3. You may copy and distribute the Program (or a work based on it,\r\nunder Section 2) in object code or executable form under the terms of\r\nSections 1 and 2 above provided that you also do one of the following:\r\n\r\n    a) Accompany it with the complete corresponding machine-readable\r\n    source code, which must be distributed under the terms of Sections\r\n    1 and 2 above on a medium customarily used for software interchange; or,\r\n\r\n    b) Accompany it with a written offer, valid for at least three\r\n    years, to give any third party, for a charge no more than your\r\n    cost of physically performing source distribution, a complete\r\n    machine-readable copy of the corresponding source code, to be\r\n    distributed under the terms of Sections 1 and 2 above on a medium\r\n    customarily used for software interchange; or,\r\n\r\n    c) Accompany it with the information you received as to the offer\r\n    to distribute corresponding source code.  (This alternative is\r\n    allowed only for noncommercial distribution and only if you\r\n    received the program in object code or executable form with such\r\n    an offer, in accord with Subsection b above.)\r\n\r\nThe source code for a work means the preferred form of the work for\r\nmaking modifications to it.  For an executable work, complete source\r\ncode means all the source code for all modules it contains, plus any\r\nassociated interface definition files, plus the scripts used to\r\ncontrol compilation and installation of the executable.  However, as a\r\nspecial exception, the source code distributed need not include\r\nanything that is normally distributed (in either source or binary\r\nform) with the major components (compiler, kernel, and so on) of the\r\noperating system on which the executable runs, unless that component\r\nitself accompanies the executable.\r\n\r\nIf distribution of executable or object code is made by offering\r\naccess to copy from a designated place, then offering equivalent\r\naccess to copy the source code from the same place counts as\r\ndistribution of the source code, even though third parties are not\r\ncompelled to copy the source along with the object code.\r\n\r\n  4. You may not copy, modify, sublicense, or distribute the Program\r\nexcept as expressly provided under this License.  Any attempt\r\notherwise to copy, modify, sublicense or distribute the Program is\r\nvoid, and will automatically terminate your rights under this License.\r\nHowever, parties who have received copies, or rights, from you under\r\nthis License will not have their licenses terminated so long as such\r\nparties remain in full compliance.\r\n\r\n  5. You are not required to accept this License, since you have not\r\nsigned it.  However, nothing else grants you permission to modify or\r\ndistribute the Program or its derivative works.  These actions are\r\nprohibited by law if you do not accept this License.  Therefore, by\r\nmodifying or distributing the Program (or any work based on the\r\nProgram), you indicate your acceptance of this License to do so, and\r\nall its terms and conditions for copying, distributing or modifying\r\nthe Program or works based on it.\r\n\r\n  6. Each time you redistribute the Program (or any work based on the\r\nProgram), the recipient automatically receives a license from the\r\noriginal licensor to copy, distribute or modify the Program subject to\r\nthese terms and conditions.  You may not impose any further\r\nrestrictions on the recipients'' exercise of the rights granted herein.\r\nYou are not responsible for enforcing compliance by third parties to\r\nthis License.\r\n\r\n  7. If, as a consequence of a court judgment or allegation of patent\r\ninfringement or for any other reason (not limited to patent issues),\r\nconditions are imposed on you (whether by court order, agreement or\r\notherwise) that contradict the conditions of this License, they do not\r\nexcuse you from the conditions of this License.  If you cannot\r\ndistribute so as to satisfy simultaneously your obligations under this\r\nLicense and any other pertinent obligations, then as a consequence you\r\nmay not distribute the Program at all.  For example, if a patent\r\nlicense would not permit royalty-free redistribution of the Program by\r\nall those who receive copies directly or indirectly through you, then\r\nthe only way you could satisfy both it and this License would be to\r\nrefrain entirely from distribution of the Program.\r\n\r\nIf any portion of this section is held invalid or unenforceable under\r\nany particular circumstance, the balance of the section is intended to\r\napply and the section as a whole is intended to apply in other\r\ncircumstances.\r\n\r\nIt is not the purpose of this section to induce you to infringe any\r\npatents or other property right claims or to contest validity of any\r\nsuch claims; this section has the sole purpose of protecting the\r\nintegrity of the free software distribution system, which is\r\nimplemented by public license practices.  Many people have made\r\ngenerous contributions to the wide range of software distributed\r\nthrough that system in reliance on consistent application of that\r\nsystem; it is up to the author/donor to decide if he or she is willing\r\nto distribute software through any other system and a licensee cannot\r\nimpose that choice.\r\n\r\nThis section is intended to make thoroughly clear what is believed to\r\nbe a consequence of the rest of this License.\r\n\r\n  8. If the distribution and/or use of the Program is restricted in\r\ncertain countries either by patents or by copyrighted interfaces, the\r\noriginal copyright holder who places the Program under this License\r\nmay add an explicit geographical distribution limitation excluding\r\nthose countries, so that distribution is permitted only in or among\r\ncountries not thus excluded.  In such case, this License incorporates\r\nthe limitation as if written in the body of this License.\r\n\r\n  9. The Free Software Foundation may publish revised and/or new versions\r\nof the General Public License from time to time.  Such new versions will\r\nbe similar in spirit to the present version, but may differ in detail to\r\naddress new problems or concerns.\r\n\r\nEach version is given a distinguishing version number.  If the Program\r\nspecifies a version number of this License which applies to it and "any\r\nlater version", you have the option of following the terms and conditions\r\neither of that version or of any later version published by the Free\r\nSoftware Foundation.  If the Program does not specify a version number of\r\nthis License, you may choose any version ever published by the Free Software\r\nFoundation.\r\n\r\n  10. If you wish to incorporate parts of the Program into other free\r\nprograms whose distribution conditions are different, write to the author\r\nto ask for permission.  For software which is copyrighted by the Free\r\nSoftware Foundation, write to the Free Software Foundation; we sometimes\r\nmake exceptions for this.  Our decision will be guided by the two goals\r\nof preserving the free status of all derivatives of our free software and\r\nof promoting the sharing and reuse of software generally.\r\n\r\nNO WARRANTY\r\n-----------\r\n\r\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\r\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\r\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\r\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\r\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\r\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\r\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\r\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\r\nREPAIR OR CORRECTION.\r\n\r\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\r\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\r\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\r\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\r\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\r\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\r\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\r\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\r\nPOSSIBILITY OF SUCH DAMAGES.\r\n\r\n---------------------------\r\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:323:"--------------------\r\nExtra: Ace\r\n--------------------\r\nVersion: 1.5.0\r\nCreated: March 26th, 2014\r\nSince: March 29th, 2012\r\nAuthor: Danil Kostin <danya.postfactum@gmail.com>\r\nLicense: GNU GPLv2 (or later at your option)\r\n\r\nIntegrates Ace Code Editor into MODx Revolution.\r\n\r\nPress Ctrl+Alt+H to see all available shortcuts.";s:9:"changelog";s:3059:"Changelog for Ace integration into MODx Revolution.\r\n\r\nAce 1.5.0\r\n====================================\r\n- Changed: Assets are moved back to /assets/\r\n- Fixed: MODx tag completions (was completely broken)\r\n- Added: Editor height setting\r\n\r\nAce 1.4.3\r\n====================================\r\n- Added: MODx tag completions (Ctrl+Space)\r\n- Fixed: Issue caused AjaxManager (MODx Manager speed booster plugin) tree drag''n''drop bug\r\n\r\nAce 1.4.2\r\n====================================\r\n- Added: Undo coalescing\r\n- Changed: Mac fullscreen command is bound to Command+F12\r\n- Added: Drag delay (allow to start new selection inside current one) for Mac\r\n- Fixed: Use file extension of static chunks to detect code syntax\r\n\r\n\r\nAce 1.4.1\r\n====================================\r\n- Fixed: Tab handling\r\n- Fixed: Emmet shortcut listing by Ctr+Alt+H\r\n- Added: Expandable snippets support (see ace.snippets setting)\r\n- Added: Emmet wrap_with_abbreviation command (Alt+W)\r\n\r\nAce 1.4.0\r\n====================================\r\n- Added: Emmet (aka Zen Coding) support\r\n- Added: Terminal dark theme\r\n- Added: Hotkey table (Ctrl+Alt+H)\r\n- Fixed: Resource overview fatal error\r\n- Changed: Assets are moved to /manager/assets/components/\r\n\r\nAce 1.3.3\r\n====================================\r\n- Added: PHP live syntax check\r\n- Added: Chaos dark theme\r\n- Added: Setting show_invisibles\r\n\r\n\r\nAce 1.3.2\r\n====================================\r\n- Fixed: The bug while installing the Ace\r\n- Fixed: Broken word_wrap setting\r\n- Added: Tab settings (tab size, soft tab)\r\n- Added: Now completele compatible with AjaxManager extra\r\n\r\n\r\nAce 1.3.1\r\n====================================\r\n- Changed: Plugin content now is stored in static file\r\n\r\n\r\nAce 1.3.0\r\n====================================\r\n- Added: German translation\r\n- Added: MODx tags highlighting\r\n- Added: Ambiance and xcode themes\r\n- Added: less/scss syntax highlighting\r\n- Added: Fullwindow mode (Ctrl + F11)\r\n- Changed: Editor now ignores `wich_editor` setting. Set `use_editor` to false to use ACE for Resources.\r\n\r\n\r\nAce 1.2.1\r\n====================================\r\n- Changed: Assets are moved to manager folder\r\n- Added: Font size setting\r\n- Added: "GitHub" theme\r\n- Added: Support of html5 drag''n''drop (accepting of dropped text)\r\n- Added: XML / HTML tag autoclosing\r\n- Fixed: broken en lexicon and php 5.3 incompatibility\r\n\r\n\r\nAce 1.2.0\r\n====================================\r\n- Removed: Some unnecessary options\r\n- Changed: Editor options are moved to system settings\r\n- Fixed: Multiple little editor bugs\r\n- Added: Add missing "OnFileEditFormPrerender" event to MODx\r\n- Added: Multiline editing\r\n- Added: Advanced find/replace window\r\n\r\n\r\nAce 1.1.0\r\n====================================\r\n- Fixed: Fatal error on document create event\r\n- Fixed: Changing of properties has no effect\r\n- Added: File edition support\r\n- Added: MODx tree elements drag''n''drop support\r\n- Added: Auto-assigning which_element_editor to Ace\r\n\r\n\r\nAce 1.0.0\r\n====================================\r\n- Added: Plugin properties to adjust how Ace behaves\r\n- Initial commit";s:9:"signature";s:12:"ace-1.5.0-pl";s:13:"initialConfig";s:15:"[object Object]";s:4:"text";s:20:"Продолжить";s:2:"id";s:19:"package-install-btn";s:6:"hidden";s:5:"false";s:7:"handler";s:557:"function (va){var g=Ext.getCmp(''modx-package-grid'');if(!g)return false;var r=g.menu.record.data?g.menu.record.data:g.menu.record;var topic=''/workspace/package/install/''+r.signature+''/'';g.loadConsole(Ext.getBody(),topic);va=va||{};Ext.apply(va,{action:''workspace/packages/install'',signature:r.signature,register:''mgr'',topic:topic});MODx.Ajax.request({url:MODx.config.connector_url,params:va,listeners:{''success'':{fn:function(){this.activate();Ext.getCmp(''modx-package-grid'').refresh();},scope:this},''failure'':{fn:function(){this.activate();},scope:this}}});}";s:5:"scope";s:15:"[object Object]";s:8:"minWidth";s:2:"75";s:10:"removeMode";s:9:"container";s:10:"hideParent";s:4:"true";s:6:"events";s:15:"[object Object]";s:7:"ownerCt";s:15:"[object Object]";s:9:"container";s:15:"[object Object]";s:8:"rendered";s:4:"true";s:8:"template";s:15:"[object Object]";s:5:"btnEl";s:15:"[object Object]";s:4:"mons";s:15:"[object Object]";s:2:"el";s:15:"[object Object]";s:4:"icon";s:0:"";s:7:"iconCls";s:0:"";s:8:"boxReady";s:4:"true";s:8:"lastSize";s:15:"[object Object]";s:11:"useSetClass";s:4:"true";s:6:"oldCls";s:12:"x-btn-noicon";s:3:"doc";s:15:"[object Object]";s:19:"monitoringMouseOver";s:4:"true";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:40:"/workspace/package/install/ace-1.5.0-pl/";s:14:"package_action";i:0;}', 'Ace', 'a:38:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"5332963462cf244397001878";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:24:"4f6e2782f245544fe8000014";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:12:"ace-1.5.0-pl";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:3:"Ace";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"1.5.0";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"5";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:8:"vrelease";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:10;a:3:{s:4:"name";s:14:"vrelease_index";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:16:"danya_postfactum";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:376:"<p>New feature: modx tag code autocompletion! Press Ctrl+Space to get code suggestions with descriptions.</p><p>Works for snippets, chunks, system settings, tvs and resource fields, filters and properties.</p><p>Property sets, lexicon entries are not supported. Unfortunately, I have no idea how to retrieve chunk-specific placeholders, so there is no placeholder support.</p>";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:353:"<p></p><p>Install via Package Management.</p><p>Set editor theme you wish in system settings (change namespace to "ace").</p><p>If you want to use this editor for resources, just set system option <i>use_editor</i> to <b>false</b>&nbsp;(global usage), or&nbsp;<i>richtext</i>&nbsp;setting of certain resource to <b>false</b> (specific usage).</p><p></p>";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:3491:"<p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p>Ace 1.5.0</p><p>====================================</p><p>- Changed: Assets are moved back to /assets/</p><p>- Fixed: MODx tag completions (was completely broken)</p><p>- Added: Editor height setting</p><p>Ace 1.4.3</p><p>====================================</p><p>- Added: MODx tag completions (Ctrl+Space)</p><p>- Fixed: Issue caused AjaxManager (MODx Manager speed booster plugin) tree drag''n''drop bug</p><p>Ace 1.4.2</p><p>====================================</p><p>- Added: Undo coalescing</p><p>- Changed: Mac fullscreen command is bound to Command+F12</p><p>- Added: Drag delay (allow to start new selection inside current one) for Mac</p><p>- Fixed: Use file extension of static chunks to detect code syntax</p><p>Ace 1.4.1</p><p>====================================</p><p>- Fixed: Tab handling</p><p>- Fixed: Emmet shortcut listing by Ctr+Alt+H</p><p>- Added: Expandable snippets support (see ace.snippets setting)</p><p>- Added: Emmet wrap_with_abbreviation command (Alt+W)</p><p></p><p>Ace 1.4.0</p><p>====================================</p><p>- Added: Emmet (aka Zen Coding) support</p><p>- Added: Terminal dark theme</p><p>- Added: Hotkey table (Ctrl+Alt+H)</p><p>- Fixed: Resource overview fatal error</p><p>- Changed: Assets are moved to /manager/assets/components/</p><p></p><p>Ace 1.3.3</p><p>====================================</p><p>- Added: PHP live syntax check</p><p>- Added: Chaos dark theme</p><p>- Added: Setting show_invisibles</p><p></p><p>Ace 1.3.2</p><p>====================================</p><p>- Fixed: The bug while installing the Ace</p><p>- Fixed: Broken word_wrap setting</p><p>- Added: Tab settings (tab size, soft tab)</p><p>- Added: Now completele compatible with AjaxManager extra</p><p>Ace 1.3.1</p><p>====================================</p><p>- Changed: Plugin content now is stored in static file</p><p></p><p>Ace 1.3.0</p><p>====================================</p><p>- Added: German translation</p><p>- Added: MODx tags highlighting</p><p>- Added: Ambiance and xcode themes</p><p>- Added: less/scss syntax highlighting</p><p>- Added: Fullwindow mode (Ctrl + F11)</p><p>- Changed: Editor now ignores `wich_editor` setting. Set `use_editor` to false to use ACE for Resources.</p><p></p><p>Ace 1.2.1</p><p>====================================</p><p>- Changed: Assets are moved to manager folder</p><p>- Added: Font size setting</p><p>- Added: "GitHub" theme</p><p>- Added: Support of html5 drag''n''drop (accepting of dropped text)</p><p>- Added: XML / HTML tag autoclosing</p><p>- Fixed: broken en lexicon and php 5.3 incompatibility</p><p></p><p>Ace 1.2.0</p><p>====================================</p><p>- Removed: Some unnecessary options</p><p>- Changed: Editor options are moved to system settings</p><p>- Fixed: Multiple little editor bugs</p><p>- Added: Add missing "OnFileEditFormPrerender" event to MODx</p><p>- Added: Multiline editing</p><p>- Added: Advanced find/replace window</p><p></p><p></p><p>Ace 1.1.0</p><p>====================================</p><p>- Fixed: Fatal error on document create event</p><p>- Fixed: Changing of properties has no effect</p><p>- Added: File edition support</p><p>- Added: MODx tree elements drag''n''drop support</p><p>- Added: Auto-assigning which_element_editor to Ace</p><p></p><p></p><p>Ace 1.0.0</p><p>====================================</p><p>- Added: Plugin properties to adjust how Ace behaves</p><p>- Initial commit</p><p></p><p></p>";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2014-03-26T08:56:20+0000";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:16:"danya_postfactum";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-03-24T12:52:04+0000";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2014-03-26T08:56:20+0000";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:5:"58537";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:21;a:4:{s:4:"name";s:7:"audited";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:25;a:3:{s:4:"name";s:7:"smf_url";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:24:"4d4c3fa6b2b0830da9000001";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=5332963462cf24439700187a";s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:12:"ace-1.5.0-pl";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:12:"mysql,sqlsrv";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:9:"breaks_at";s:10:"attributes";a:0:{}s:4:"text";s:8:"10000000";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:68:"http://modx.s3.amazonaws.com/extras/4f6e2782f245544fe8000014/ace.png";s:8:"children";a:0:{}}i:34;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:7:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"5332963462cf24439700187a";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:24:"5332963462cf244397001878";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:8:"filename";s:10:"attributes";a:0:{}s:4:"text";s:26:"ace-1.5.0-pl.transport.zip";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:5:"28576";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:6:"lastip";s:10:"attributes";a:0:{}s:4:"text";s:13:"82.192.64.130";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=5332963462cf24439700187a";s:8:"children";a:0:{}}}}i:35;a:4:{s:4:"name";s:17:"package-signature";s:10:"attributes";a:0:{}s:4:"text";s:12:"ace-1.5.0-pl";s:8:"children";a:0:{}}i:36;a:4:{s:4:"name";s:10:"categories";s:10:"attributes";a:0:{}s:4:"text";s:15:"richtexteditors";s:8:"children";a:0:{}}i:37;a:3:{s:4:"name";s:4:"tags";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}}', 1, 5, 0, 'pl', 0);
INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('dateago-1.0.2-pl', '2015-03-24 05:38:40', '2015-03-24 14:38:59', '2015-03-24 17:38:59', 0, 1, 2, 0, 'dateago-1.0.2-pl.transport.zip', NULL, 'a:33:{s:9:"changelog";s:159:"Changelog for dateAgo.\n\n1.0.2\n==============\n- The snippet is no longer static.\n\n1.0.1\n==============\n- Fixed mistypes\n\n1.0.0\n==============\n- Initial release.";s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:393:"--------------------\ndateAgo\n--------------------\nAuthor: Vasiliy Naumkin <bezumkin@yandex.ru>\n--------------------\n\nSnippet that makes your dates look cool.\nUse it as output filter: [[+publishedon:dateAgo]]\n\n\n--------------------\nFeel free to suggest ideas/improvements/bugs on GitHub:\nhttp://github.com/bezumkin/dateAgo/issues\n--------------------\nThanks to LiveStreet CMS for the algorithm.";s:9:"signature";s:16:"dateago-1.0.2-pl";s:13:"initialConfig";s:15:"[object Object]";s:4:"text";s:20:"Продолжить";s:2:"id";s:19:"package-install-btn";s:6:"hidden";s:5:"false";s:7:"handler";s:557:"function (va){var g=Ext.getCmp(''modx-package-grid'');if(!g)return false;var r=g.menu.record.data?g.menu.record.data:g.menu.record;var topic=''/workspace/package/install/''+r.signature+''/'';g.loadConsole(Ext.getBody(),topic);va=va||{};Ext.apply(va,{action:''workspace/packages/install'',signature:r.signature,register:''mgr'',topic:topic});MODx.Ajax.request({url:MODx.config.connector_url,params:va,listeners:{''success'':{fn:function(){this.activate();Ext.getCmp(''modx-package-grid'').refresh();},scope:this},''failure'':{fn:function(){this.activate();},scope:this}}});}";s:5:"scope";s:15:"[object Object]";s:8:"minWidth";s:2:"75";s:10:"removeMode";s:9:"container";s:10:"hideParent";s:4:"true";s:6:"events";s:15:"[object Object]";s:7:"ownerCt";s:15:"[object Object]";s:9:"container";s:15:"[object Object]";s:8:"rendered";s:4:"true";s:8:"template";s:15:"[object Object]";s:5:"btnEl";s:15:"[object Object]";s:4:"mons";s:15:"[object Object]";s:2:"el";s:15:"[object Object]";s:4:"icon";s:0:"";s:7:"iconCls";s:0:"";s:8:"boxReady";s:4:"true";s:8:"lastSize";s:15:"[object Object]";s:11:"useSetClass";s:4:"true";s:6:"oldCls";s:12:"x-btn-noicon";s:3:"doc";s:15:"[object Object]";s:19:"monitoringMouseOver";s:4:"true";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:44:"/workspace/package/install/dateago-1.0.2-pl/";s:14:"package_action";i:0;}', 'DateAgo', 'a:36:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:1:"9";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:7:"DateAgo";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:153:"Сниппет для приятного форматирования дат. Логика работы позаимствована из LiveStreet CMS.";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:1:"6";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:19:"2013-05-24 21:03:13";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:19:"0000-00-00 00:00:00";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:88:"https://store.simpledream.ru/assets/uploadify/5/4/8/54892abb7bd5ea59ee87eb2474aa2fa0.png";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:4:"link";s:10:"attributes";a:0:{}s:4:"text";s:19:"http://bezumkin.ru/";s:8:"children";a:0:{}}i:10;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:3:"897";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:6:"active";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:8:"resource";s:10:"attributes";a:0:{}s:4:"text";s:2:"14";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:1:"9";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"1.0.2";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"2";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:21;a:3:{s:4:"name";s:13:"release_index";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:16:"dateago-1.0.2-pl";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:1:"-";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:231:"Changelog for dateAgo.<br />\n<br />\n1.0.2<br />\n==============<br />\n- The snippet is no longer static.<br />\n<br />\n1.0.1<br />\n==============<br />\n- Fixed mistypes<br />\n<br />\n1.0.0<br />\n==============<br />\n- Initial release.";s:8:"children";a:0:{}}i:25;a:4:{s:4:"name";s:10:"releasedby";s:10:"attributes";a:0:{}s:4:"text";s:1:"6";s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:19:"2014-02-07 08:49:29";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:3:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:10:"version_id";s:10:"attributes";a:0:{}s:4:"text";s:3:"193";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:29:"Василий Наумкин";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:16:"dateago-1.0.2-pl";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:5:"mysql";s:8:"children";a:0:{}}i:34;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:113:"http://modstore.pro/extras/download?package_id=9&version_id=193&username=&api_key=&http_host=visualisation.wi6.ru";s:8:"children";a:0:{}}i:35;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:2:{i:0;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:113:"http://modstore.pro/extras/download?package_id=9&version_id=193&username=&api_key=&http_host=visualisation.wi6.ru";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}}}}', 1, 0, 2, 'pl', 0);
INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('collections-3.1.1-pl', '2015-03-25 10:44:48', '2015-03-25 07:45:00', '2015-03-25 10:45:00', 0, 1, 1, 0, 'collections-3.1.1-pl.transport.zip', NULL, 'a:33:{s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:221:"=====================\n     Collections\n     3.1.1 pl\n\n      John Peca\n     john@modx.com\n=====================\n\nAn Extra for MODX Revolution that provides for Resource Collections managed by CollectionContainer Resources.";s:9:"changelog";s:7018:"Changelog for Collections.\n\nCollections 3.1.1\n===================\n- Fixed showing (empty) template in child''s template select box\n- Fixed renderer image path\n- Fixed D&D reorder children when element or file tree is selected\n- Fixed back to collection/selection button for static resources/weblinks/symlinks\n- Fixed back to collection/selection button on create new child page\n\nCollections 3.1.0\n===================\n- Fixed reset filter button in Selections\n- Added option to set default values for content type for new children\n- Added system setting to modify image path in image renderer\n- Allow children under Selections\n- Added an option to add quip column\n- Fixed selecting templates in Collection view in Revo 2.2.x\n- Added option to set default values for hidemenu,published,cacheable,searchable and richtext for new children\n- Added option to specify sortby for Selections Resource search query\n- Added option to set label for Back to Collection/Selection button\n- Fixed displaying selection grid with TVs\n- Pass whole row to snippet renderer\n- Fixed sorting by TV with dash in name\n\nCollections 3.0.2\n===================\n- Fixed saving Collections view from Resource''s settings tab\n- Link Resource to Selection can be done by searching ID\n- Fixed passing sort dir int uppercase format to getSelections\n- Removed parents option from getSelections call\n\nCollections 3.0.1\n===================\n- Fixed update from grid\n\nCollections 3.0.0\n===================\n- Added validation for column name if contains a dot\n- Added PHP renderer (snippet) that will be used for a column\n- Added view option to define Resource Classes that will be available in resource type select\n- Added view option to define context menu items\n- Added view option to define buttons and their style\n- Fixed saving view options from not-activated tab\n- Changed default tree icon for Collections in Revo 2.3\n- Added getSelections snippet (works with getPage, getCache, etc.)\n- Updated view of Collection''s settings tab\n- Updated Collections view\n- Added CRC for Selections\n- Added back button to Collection''s children and revert close button to original functionality\n- Fire OnBeforeEmptyTrash and OnEmptyTrash when removing Resource via Collections\n\nCollections 2.2.2\n===================\n- Fixed rendering TV and Tagger columns with dash in name/alias\n\nCollections 2.2.1\n===================\n- Fixed PHP 5.2 compatibility\n\nCollections 2.2.0\n===================\n- Added an option to set position of Content field\n- Added an options to set Tab''s and New child''s button label\n- Added Collections.renderer.image for rendering images\n- Added tabs to Collection views to split its settings\n- Splitted Setting tab to vtabs for Resource settings and Collections settings\n- Improved close button in collection''s childs\n- Fixed showing data in TV columns\n- Added an option to permanently remove deleted resource\n- Fixed duplicate action from context menu\n- Added data controller to show resource owerview page\n- Fix # being appended to manager url when clicking a button\n- Fix strict standards error (PHP 5.4+) in resource/getlist processor\n- Fix not working editlink on pagetitle click in grid\n\nCollections 2.1.0\n===================\n- Added option to duplicate Collection''s view\n- Updated layout for create/update view''s column\n- Added view,update,delete,duplicate,publish items to children''s grid context menu\n- Added children default template, default resource type and allow resource type selection options to collection''s templates\n- Fixed View button\n- Fixed logging messages from plugin\n\nCollections 2.0.2\n===================\n- Fixed datetime renderers\n\nCollections 2.0.1\n===================\n- Fixed saving collections container in Revolution 2.2.x\n\nCollections 2.0.0\n===================\n- Added collections templates\n- Added ability to create different child type from grid\n- Support for Revolution 2.3\n\nCollections 1.3.3\n===================\n- Remove debugger call :X\n\nCollections 1.3.2\n===================\n- Hotfix for confirm navigation dialog\n- Fixed selecting multiple rows\n- Fixed checking for Tagger\n\nCollections 1.3.1\n===================\n- Release with correct version number\n\nCollections 1.3.0\n===================\n- Support for Tagger in search field in Children tab\n- Added ability to drag and drop child to resource tree to change parent\n- English and German lexicon updates\n\nCollections 1.2.0\n===================\n- Added ability to search via created by full name\n- Added ability to search via created by username\n- Fixed switching child between two Collections\n- Fixed switching great parent to Collections when moving last child\n- Fixed child name after creating a duplicate\n- Added drag & drop sort by menuindex\n\nCollections 1.1.1\n===================\n- #20 Fixed after re-save child set show_in_tree 1\n\nCollections 1.1.0\n===================\n- #9 Added duplicate button\n- #10 Added icon for Collection into the Resource tree\n- #11 Make grid stateful and added some more columns (until clearing cache grid keeps showed/hidden columns and their order)\n- Renamed "Collection container" to "Collection"\n- #7 Added German translation (thanks to pepebe)\n- #12 Added Czech translation\n- #14 Added Dutch translation (thanks to @mark_hamstra)\n- #15 Added French translation (thanks to @rtripault)\n- #16 #17 Added Russian translation (thanks to vanchelo)\n- #18 Fixed show_in_tree conflict\n\nCollections 1.0.0\n===================\n- Published in MODX extras\n\nCollections 0.8.2\n===================\n- Finished renaming CollectionsContainer -> CollectionContainer\n- Removed chromephp log calls\n\nCollections 0.8.1\n===================\n- Fixed showing aliases in children grid\n\nCollections 0.8.0\n===================\n- Renamed CollectionsContainer to CollectionContainer\n- Fixed returning proper count of children under Collection Container\n\nCollections 0.7.0\n===================\n- Added switchback resolver that will switch all Collections Containers back to modDocument and set show_in_tree to 1 for all Collections children on uninstall\n- Added support for handle class_key switch from CollectionContainer and to CollectionContainer\n\nCollections 0.6.0\n===================\n- Fixed proper showing Collections Container under another Collections Container\n- Fixed proper showing normal containers with children under CRC\n- Added listener for Before Empty Trash event to hide Resources that are under Collections Container and that will not have other children after the trash will be cleaned\n\nCollections 0.5.0\n===================\n- Updated the plugin to inject JS for handling cancel button in Resource Update panel\n\nCollections 0.4.0\n===================\n- Added plugin that handles correct setting of show_in_tree parameter for Resources after creating a new Resource or sorting resources\n\nCollections 0.3.0\n===================\n- Visual improvements for grid with children\n\nCollections 0.2.0\n===================\n- Extended Resource Update panel with new Tab that contains grid with children\n\n\nCollections 0.1.0\n===================\n- Initial release.\n";s:9:"signature";s:20:"collections-3.1.1-pl";s:13:"initialConfig";s:15:"[object Object]";s:4:"text";s:20:"Продолжить";s:2:"id";s:19:"package-install-btn";s:6:"hidden";s:5:"false";s:7:"handler";s:557:"function (va){var g=Ext.getCmp(''modx-package-grid'');if(!g)return false;var r=g.menu.record.data?g.menu.record.data:g.menu.record;var topic=''/workspace/package/install/''+r.signature+''/'';g.loadConsole(Ext.getBody(),topic);va=va||{};Ext.apply(va,{action:''workspace/packages/install'',signature:r.signature,register:''mgr'',topic:topic});MODx.Ajax.request({url:MODx.config.connector_url,params:va,listeners:{''success'':{fn:function(){this.activate();Ext.getCmp(''modx-package-grid'').refresh();},scope:this},''failure'':{fn:function(){this.activate();},scope:this}}});}";s:5:"scope";s:15:"[object Object]";s:8:"minWidth";s:2:"75";s:10:"removeMode";s:9:"container";s:10:"hideParent";s:4:"true";s:6:"events";s:15:"[object Object]";s:7:"ownerCt";s:15:"[object Object]";s:9:"container";s:15:"[object Object]";s:8:"rendered";s:4:"true";s:8:"template";s:15:"[object Object]";s:5:"btnEl";s:15:"[object Object]";s:4:"mons";s:15:"[object Object]";s:2:"el";s:15:"[object Object]";s:4:"icon";s:0:"";s:7:"iconCls";s:0:"";s:8:"boxReady";s:4:"true";s:8:"lastSize";s:15:"[object Object]";s:11:"useSetClass";s:4:"true";s:6:"oldCls";s:12:"x-btn-noicon";s:3:"doc";s:15:"[object Object]";s:19:"monitoringMouseOver";s:4:"true";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:48:"/workspace/package/install/collections-3.1.1-pl/";s:14:"package_action";i:0;}', 'Collections', 'a:38:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"54bfab13dc532f5cee028507";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:24:"52aa418862cf2419b80014c5";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:20:"collections-3.1.1-pl";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:11:"Collections";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"3.1.1";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"3";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:8:"vrelease";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:10;a:3:{s:4:"name";s:14:"vrelease_index";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:8:"theboxer";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:487:"<p>Collections is a MODX Revolution Extra that adds a custom CollectionContainer resource class with the following behaviour:</p>\n<ul>\n<li>Any direct child resource will be hidden from the Resource Tree in the Manager, and listed in a grid view (similar to Articles) under a dedicated "Children" tab.</li>\n<li>Any children that themselves have children will be shown in the Tree, to be managed normally.</li>\n</ul>\n<p>This project is on GitHub: https://github.com/modxcms/Collections</p>";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:547:"<p>Install via Package Management</p>\n<p>Sub Collections</p>\n\n<p>Just like the MODX Resource Tree itself, Collections supports nesting. You can create a Collection within another Collection. Sub Collection Containers will be displayed in the resource tree and their children will be displayed in the grid view.</p>\n\n<p>Drag n Drop</p>\n\n<p>You can drag n drop Resources into a Collections container and if they don''t have children of their own they will be listed in the grid. If they do have children, they''ll just remain in the Tree as usual.</p>";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:8063:"<p><b>Collections 3.1.1</b><b></b></p><p><ul><li>Fixed showing (empty) template in child''s template select box</li><li>Fixed renderer image path</li><li>Fixed D&amp;D reorder children when element or file tree is selected</li><li>Fixed back to collection/selection button for static resources/weblinks/symlinks</li><li>Fixed back to collection/selection button on create new child page</li></ul></p><p></p><p><b>Collections 3.1.0</b></p><p></p><ul><li>Fixed reset filter button in Selections</li><li>Added option to set default values for content type for new children</li><li>Added system setting to modify image path in image renderer</li><li>Allow children under Selections</li><li>Added an option to add quip column</li><li>Fixed selecting templates in Collection view in Revo 2.2.x</li><li>Added option to set default values for hidemenu,published,cacheable,searchable and richtext for new children</li><li>Added option to specify sortby for Selections Resource search query</li><li>Added option to set label for Back to Collection/Selection button</li><li>Fixed displaying selection grid with TVs</li><li>Pass whole row to snippet renderer</li><li>Fixed sorting by TV with dash in name</li></ul><p></p><p></p><p><b>Collections 3.0.2</b><b></b></p><p></p><ul><li>Fixed saving Collections view from Resource''s settings tab</li><li>Link Resource to Selection can be done by searching ID</li><li>Fixed passing sort dir int uppercase format to getSelections</li><li>Removed parents option from getSelections call</li></ul><p></p><p></p><p><b>Collections 3.0.1</b><b></b></p><p></p><ul><li>Fixed update from grid</li></ul><p></p><p><b>Collections 3.0.0</b></p><p></p><ul><li>Added validation for column name if contains a dot</li><li>Added PHP renderer (snippet) that will be used for a column</li><li>Added view option to define Resource Classes that will be available in resource type select</li><li>Added view option to define context menu items</li><li>Added view option to define buttons and their style</li><li>Fixed saving view options from not-activated tab</li><li>Changed default tree icon for Collections in Revo 2.3</li><li>Added getSelections snippet (works with getPage, getCache, etc.)</li><li>Updated view of Collection''s settings tab</li><li>Updated Collections view</li><li>Added CRC for Selections</li><li>Added back button to Collection''s children and revert close button to original functionality</li><li>Fire OnBeforeEmptyTrash and OnEmptyTrash when removing Resource via Collections</li></ul><p></p><p></p><p><b>Collections 2.2.2</b></p><p></p><ul><li>Fixed rendering TV and Tagger columns with dash in name/alias</li></ul><p></p><p><b>Collections 2.2.1</b></p><p></p><ul><li>Fixed PHP 5.2 compatibility</li></ul><p></p><p><b>Collections 2.2.0</b></p><p></p><ul><li>Added an option to set position of Content field</li><li>Added an options to set Tab''s and New child''s button label</li><li>Added Collections.renderer.image for rendering images</li><li>Added tabs to Collection views to split its settings</li><li>Splitted Setting tab to vtabs for Resource settings and Collections settings</li><li>Improved close button in collection''s childs</li><li>Fixed showing data in TV columns</li><li>Added an option to permanently remove deleted resource</li><li>Fixed duplicate action from context menu</li><li>Added data controller to show resource owerview page</li><li>Fix # being appended to manager url when clicking a button</li><li>Fix strict standards error (PHP 5.4+) in resource/getlist processor</li><li>Fix not working editlink on pagetitle click in grid</li></ul><p></p><p><b>Collections 2.1.0</b></p><p></p><ul><li>Added option to duplicate Collection''s view</li><li>Updated layout for create/update view''s column</li><li>Added view,update,delete,duplicate,publish items to children''s grid context menu</li><li>Added children default template, default resource type and allow resource type selection options to collection''s templates</li><li>Fixed View button</li><li>Fixed logging messages from plugin</li></ul><p></p><p><b>Collections 2.0.2</b></p><p></p><ul><li>Fixed datetime renderers</li></ul><p></p><p><b>Collections 2.0.1</b></p><p></p><ul><li>Fixed saving collections container in Revolution 2.2.x</li></ul><p></p><p><b>Collections 2.0.0</b></p><p></p><ul><li>Added collections templates</li><li>Added ability to create different child type from grid</li><li>Support for Revolution 2.3</li></ul><p></p><p><b>Collections 1.3.3</b></p><p></p><ul><li>Remove debugger call :X</li></ul><p></p><p><b>Collections 1.3.2</b></p><p></p><ul><li>Hotfix for confirm navigation dialog</li><li>Fixed selecting multiple rows</li><li>Fixed checking for Tagger</li></ul><p></p><p><b>Collections 1.3.1</b></p><p></p><ul><li>Release with correct version number</li></ul><p></p><p><b>Collections 1.3.0</b></p><p></p><ul><li>Support for Tagger in search field in Children tab</li><li>Added ability to drag and drop child to resource tree to change parent</li><li>English and German lexicon updates</li></ul><p></p><p><b>Collections 1.2.0</b></p><p></p><ul><li>Added ability to search via created by full name</li><li>Added ability to search via created by username</li><li>Fixed switching child between two Collections</li><li>Fixed switching great parent to Collections when moving last child</li><li>Fixed child name after creating a duplicate</li><li>Added drag &amp; drop sort by menuindex</li></ul><p></p><p><b>Collections 1.1.1</b></p><p></p><ul><li>Fixed after re-save child set show_in_tree 1</li></ul><p></p><p><b>Collections 1.1.0</b></p><p></p><ul><li>Added duplicate button</li><li>Added icon for Collection into the Resource tree</li><li>Make grid stateful and added some more columns (until clearing cache grid keeps showed/hidden columns and their order)</li><li>Renamed "Collection container" to "Collection"</li><li>Added German translation (thanks to pepebe)</li><li>Added Czech translation</li><li>Added Dutch translation (thanks to @mark_hamstra)</li><li>Added French translation (thanks to @rtripault)</li><li>Added Russian translation (thanks to vanchelo)</li><li>Fixed show_in_tree conflict</li></ul><p></p><p><b>Collections 1.0.0</b></p><p></p><ul><li>Published in MODX extras</li></ul><p></p><p><b>Collections 0.8.2</b></p><p></p><ul><li>Finished renaming CollectionsContainer -&gt; CollectionContainer</li><li>Removed chromephp log calls</li></ul><p></p><p><b>Collections 0.8.1</b></p><p></p><ul><li>Fixed showing aliases in children grid</li></ul><p></p><p><b>Collections 0.8.0</b></p><p></p><ul><li>Renamed CollectionsContainer to CollectionContainer</li><li>Fixed returning proper count of children under Collection Container</li></ul><p></p><p><b>Collections 0.7.0</b></p><p></p><ul><li>Added switchback resolver that will switch all Collections Containers back to modDocument and set show_in_tree to 1 for all Collections children on uninstall</li><li>Added support for handle class_key switch from CollectionContainer and to CollectionContainer</li></ul><p></p><p><b>Collections 0.6.0</b></p><p></p><ul><li>Fixed proper showing Collections Container under another Collections Container</li><li>Fixed proper showing normal containers with children under CRC</li><li>Added listener for Before Empty Trash event to hide Resources that are under Collections Container and that will not have other children after the trash will be cleaned</li></ul><p></p><p><b>Collections 0.5.0</b></p><p></p><ul><li>Updated the plugin to inject JS for handling cancel button in Resource Update panel</li></ul><p></p><p><b>Collections 0.4.0</b></p><p></p><ul><li>Added plugin that handles correct setting of show_in_tree parameter for Resources after creating a new Resource or sorting resources</li></ul><p></p><p><b>Collections 0.3.0</b></p><p></p><ul><li>Visual improvements for grid with children</li></ul><p></p><p><b>Collections 0.2.0</b></p><p></p><ul><li>Extended Resource Update panel with new Tab that contains grid with children</li></ul><p></p><p><b>Collections 0.1.0</b></p><p></p><ul><li>Initial release.</li></ul><p></p>";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-01-21T13:35:15+0000";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:8:"theboxer";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-03-25T06:23:52+0000";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-01-21T13:35:15+0000";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"6743";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:21;a:4:{s:4:"name";s:7:"audited";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:25;a:3:{s:4:"name";s:7:"smf_url";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:24:"4d4c3fa6b2b0830da9000001";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=54bfab14dc532f5cee028509";s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:20:"collections-3.1.1-pl";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:5:"mysql";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:9:"breaks_at";s:10:"attributes";a:0:{}s:4:"text";s:8:"10000000";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:80:"http://modx.s3.amazonaws.com/extras%2F52aa418862cf2419b80014c5%2Fcollections.png";s:8:"children";a:0:{}}i:34;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:7:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"54bfab14dc532f5cee028509";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:24:"54bfab13dc532f5cee028507";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:8:"filename";s:10:"attributes";a:0:{}s:4:"text";s:34:"collections-3.1.1-pl.transport.zip";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"1525";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:6:"lastip";s:10:"attributes";a:0:{}s:4:"text";s:14:"183.129.210.90";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=54bfab14dc532f5cee028509";s:8:"children";a:0:{}}}}i:35;a:4:{s:4:"name";s:17:"package-signature";s:10:"attributes";a:0:{}s:4:"text";s:20:"collections-3.1.1-pl";s:8:"children";a:0:{}}i:36;a:4:{s:4:"name";s:10:"categories";s:10:"attributes";a:0:{}s:4:"text";s:41:"administration,blogging,content,utilities";s:8:"children";a:0:{}}i:37;a:3:{s:4:"name";s:4:"tags";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}}', 3, 1, 1, 'pl', 0);
INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('fileattach-1.0.4-pl1', '2015-03-25 11:06:02', '2015-03-25 08:06:12', '2015-03-25 11:06:12', 0, 1, 2, 0, 'fileattach-1.0.4-pl1.transport.zip', NULL, 'a:11:{s:9:"changelog";s:633:"Changelog for FileAttach.\n\n1.0.0\n==============\n- Initial release\n\n1.0.1\n==============\n- Add ability to hash file if it didn''t at upload\n- Add showSize option to snippet\n- Rewritten download processor\n- Updated FileItem model\n- Add filter for templates in document lister\n- UI editor rearrange\n\n1.0.2\n==============\n- Add download option\n- Add rank field in model\n- Add ability to manually rearrange order\n\n1.0.3\n==============\n- Add compatibility with MODx v2.2\n- Snippet fix config loading\n- Enhance media source:\n    - Extension distinction\n    - Display thumbnails\n\n1.0.4\n==============\n- DB scheme enhance\n- Add SQLSrv support\n";s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:392:"--------------------\nFileAttach\n--------------------\nAuthor: Vitaly Chekryzhev <13hakta@gmail.com>\n--------------------\n\nFile attach/upload tool for MODx Revolution.\n\nFeel free to suggest ideas/improvements/bugs on GitHub:\nhttp://github.com/13hakta/FileAttach/issues\n\nOfficial docs:\nhttp://13hakta.ru/dev/modx/fileattach-en.html (English)\nhttp://13hakta.ru/dev/modx/fileattach.html (Russian)\n";s:6:"chunks";a:1:{s:13:"FileAttachTpl";s:267:"<p>[[+description:notempty=`<strong>[[+description]]</strong><br/>`]]\n<a href="[[+url]]">[[+name]]</a> <span class="badge">[[+download]]</span>\n[[+size:notempty=`<br/><small>Size: [[+size]] bytes</small>`]]\n[[+hash:notempty=`<br/><small>SHA1: [[+hash]]</small>`]]</p>";}s:13:"setup-options";s:38:"fileattach-1.0.4-pl1/setup-options.php";s:9:"signature";s:20:"fileattach-1.0.4-pl1";s:12:"install_pack";s:2:"on";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:48:"/workspace/package/install/fileattach-1.0.4-pl1/";s:14:"package_action";i:0;}', 'FileAttach', 'a:36:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:2:"92";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:10:"FileAttach";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:57:"Прикрепление файлов к ресурсам";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:4:"3558";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:19:"2015-03-04 00:52:46";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:19:"0000-00-00 00:00:00";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:79:"http://modstore.pro/assets/uploadify/6/c/7/6c72deaa8564e82710b08897ae1333a0.jpg";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:4:"link";s:10:"attributes";a:0:{}s:4:"text";s:42:"http://13hakta.ru/dev/modx/fileattach.html";s:8:"children";a:0:{}}i:10;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:2:"38";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:6:"active";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:8:"resource";s:10:"attributes";a:0:{}s:4:"text";s:4:"1309";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:2:"92";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"1.0.4";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"4";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:3:"pl1";s:8:"children";a:0:{}}i:21;a:4:{s:4:"name";s:13:"release_index";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:20:"fileattach-1.0.4-pl1";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:1:"-";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:620:"1.0.4 pl-1 (24.03.2015)<br />\n- Исправление пути удаления файла<br />\n<br />\n1.0.4 pl (11.03.2015)<br />\n- Добавлена совместимость с MODx v2.2.X<br />\n- Исправление загрузки настроек в сниппете<br />\n- Улучшения в медиа источнике:<br />\n    - Пиктограммы связаны с расширением файла<br />\n    - Отображение миниатюр изображений<br />\n    - Правки в структуре таблиц<br />\n    - Добавлена поддержка SQLSrv";s:8:"children";a:0:{}}i:25;a:4:{s:4:"name";s:10:"releasedby";s:10:"attributes";a:0:{}s:4:"text";s:4:"3558";s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:19:"2015-03-24 14:22:59";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:3:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:10:"version_id";s:10:"attributes";a:0:{}s:4:"text";s:3:"391";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:31:"Виталий Чекрыжев";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:20:"fileattach-1.0.4-pl1";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:5:"mysql";s:8:"children";a:0:{}}i:34;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:114:"http://modstore.pro/extras/download?package_id=92&version_id=391&username=&api_key=&http_host=visualisation.wi6.ru";s:8:"children";a:0:{}}i:35;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:2:{i:0;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:114:"http://modstore.pro/extras/download?package_id=92&version_id=391&username=&api_key=&http_host=visualisation.wi6.ru";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}}}}', 1, 0, 4, 'pl', 1),
('minifyx-1.3.1-pl', '2015-03-25 12:17:36', '2015-03-25 09:18:06', '2015-03-25 12:18:06', 0, 1, 2, 0, 'minifyx-1.3.1-pl.transport.zip', NULL, 'a:33:{s:9:"changelog";s:2048:"Changelog for MinifyX\r\n\r\n1.3.1-pl (21.07.2014)\r\n==============\r\n- [#12] Support of MODX 2.3\r\n- [#11] Improved set of "munee_cache" variable on Windows.\r\n\r\n1.3.0-pl1 (12.05.2014)\r\n==============\r\n- [#8] Fixed determining of cache dir for advanced site configuration.\r\n- [#7] Fixed clearing cache.\r\n- [#2] Added cut of comments in raw styles and scripts.\r\n- [#9] Changed lessphp to https://github.com/oyejorge/less.php.\r\n- Updated scssphp to version 0.0.10.\r\n\r\n1.3.0-beta (26.12.2013)\r\n==============\r\n- Refactored main class.\r\n- Rewrited snippet MinifyX.\r\n- Added plugin MinifyX that can process scripts, styles and images of web page.\r\n- Improved connector in assets for image processing.\r\n- Changed cached files format.\r\n\r\n1.2.2-pl3 (16.12.2013)\r\n==============\r\n- Removed phar file.\r\n- Fixed url of cache dir in subfolder installations.\r\n- Ability of commenting files by prefixing them by the dash.\r\n\r\n1.2.1-pl (03.12.2013)\r\n==============\r\n- [#1] Replaced constant DIRECTORY_SEPARATOR to ''/''.\r\n\r\n1.2.0-pl (23.11.2013)\r\n==============\r\n- Fixed clean of parameter &cacheFolder\r\n\r\n1.2.0-rc (20.11.2013)\r\n==============\r\n- Updated leafo/lessphp to v0.4.0\r\n- Updated leafo/scssphp to v0.0.8\r\n- Improved error logging\r\n\r\n1.2.0-beta (12.11.2013)\r\n==============\r\n- Integrated Munee library from http://mun.ee\r\n- Auto creation of cache dir.\r\n- More options to register files on frontend.\r\n\r\n1.1.3 (07.01.2013)\r\n==============\r\n- absolute path in the URL attribute of all compressed files.\r\n\r\n1.1.2 (11.09.2012)\r\n==============\r\n- Improved caching of minified files.\r\n\r\n1.1.1 (10.09.2012)\r\n==============\r\n- Removed E_WARNING on line 94 of minifyx.class.php\r\n\r\n1.1.0 (09.09.2012)\r\n==============\r\n- Changed css minifier to Minify_CSS_Compressor from https://code.google.com/p/minify/\r\n- Added Douglas Crockford''s JSMin https://github.com/rgrove/jsmin-php/ \r\n- Serious refactor of code\r\n- Added properties to snippet\r\n- Removed plugin\r\n- Improved caching of files\r\n- Added parameters jsFilename && cssFilename\r\n\r\n\r\n1.0.0\r\n==============\r\n- Initial Version";s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:52:"Checkout http://rtfm.modx.com/display/ADDON/MinifyX\n";s:9:"signature";s:16:"minifyx-1.3.1-pl";s:13:"initialConfig";s:15:"[object Object]";s:4:"text";s:20:"Продолжить";s:2:"id";s:19:"package-install-btn";s:6:"hidden";s:5:"false";s:7:"handler";s:557:"function (va){var g=Ext.getCmp(''modx-package-grid'');if(!g)return false;var r=g.menu.record.data?g.menu.record.data:g.menu.record;var topic=''/workspace/package/install/''+r.signature+''/'';g.loadConsole(Ext.getBody(),topic);va=va||{};Ext.apply(va,{action:''workspace/packages/install'',signature:r.signature,register:''mgr'',topic:topic});MODx.Ajax.request({url:MODx.config.connector_url,params:va,listeners:{''success'':{fn:function(){this.activate();Ext.getCmp(''modx-package-grid'').refresh();},scope:this},''failure'':{fn:function(){this.activate();},scope:this}}});}";s:5:"scope";s:15:"[object Object]";s:8:"minWidth";s:2:"75";s:10:"removeMode";s:9:"container";s:10:"hideParent";s:4:"true";s:6:"events";s:15:"[object Object]";s:7:"ownerCt";s:15:"[object Object]";s:9:"container";s:15:"[object Object]";s:8:"rendered";s:4:"true";s:8:"template";s:15:"[object Object]";s:5:"btnEl";s:15:"[object Object]";s:4:"mons";s:15:"[object Object]";s:2:"el";s:15:"[object Object]";s:4:"icon";s:0:"";s:7:"iconCls";s:0:"";s:8:"boxReady";s:4:"true";s:8:"lastSize";s:15:"[object Object]";s:11:"useSetClass";s:4:"true";s:6:"oldCls";s:12:"x-btn-noicon";s:3:"doc";s:15:"[object Object]";s:19:"monitoringMouseOver";s:4:"true";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:44:"/workspace/package/install/minifyx-1.3.1-pl/";s:14:"package_action";i:0;}', 'MinifyX', 'a:36:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:2:"18";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:7:"MinifyX";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:76:"Сниппет для склейки и сжатия css и js файлов.";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:1:"6";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:19:"2013-05-26 11:58:06";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:19:"2014-07-22 11:34:11";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:88:"https://store.simpledream.ru/assets/uploadify/6/c/e/6ce608cc700012acf75b079420c35d68.jpg";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:4:"link";s:10:"attributes";a:0:{}s:4:"text";s:43:"http://bezumkin.ru/sections/components/178/";s:8:"children";a:0:{}}i:10;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"2217";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:6:"active";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:8:"resource";s:10:"attributes";a:0:{}s:4:"text";s:2:"27";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:2:"18";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"1.3.1";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"3";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:21;a:3:{s:4:"name";s:13:"release_index";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:16:"minifyx-1.3.1-pl";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:1:"-";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:2418:"Changelog for MinifyX<br />\n<br />\n1.3.1-pl (21.07.2014)<br />\n==============<br />\n- [#12] Support of MODX 2.3<br />\n- [#11] Improved set of "munee_cache" variable on Windows.<br />\n<br />\n1.3.0-pl1 (12.05.2014)<br />\n==============<br />\n- [#8] Fixed determining of cache dir for advanced site configuration.<br />\n- [#7] Fixed clearing cache.<br />\n- [#2] Added cut of comments in raw styles and scripts.<br />\n- [#9] Changed lessphp to https://github.com/oyejorge/less.php.<br />\n- Updated scssphp to version 0.0.10.<br />\n<br />\n1.3.0-beta (26.12.2013)<br />\n==============<br />\n- Refactored main class.<br />\n- Rewrited snippet MinifyX.<br />\n- Added plugin MinifyX that can process scripts, styles and images of web page.<br />\n- Improved connector in assets for image processing.<br />\n- Changed cached files format.<br />\n<br />\n1.2.2-pl3 (16.12.2013)<br />\n==============<br />\n- Removed phar file.<br />\n- Fixed url of cache dir in subfolder installations.<br />\n- Ability of commenting files by prefixing them by the dash.<br />\n<br />\n1.2.1-pl (03.12.2013)<br />\n==============<br />\n- [#1] Replaced constant DIRECTORY_SEPARATOR to ''/''.<br />\n<br />\n1.2.0-pl (23.11.2013)<br />\n==============<br />\n- Fixed clean of parameter &cacheFolder<br />\n<br />\n1.2.0-rc (20.11.2013)<br />\n==============<br />\n- Updated leafo/lessphp to v0.4.0<br />\n- Updated leafo/scssphp to v0.0.8<br />\n- Improved error logging<br />\n<br />\n1.2.0-beta (12.11.2013)<br />\n==============<br />\n- Integrated Munee library from http://mun.ee<br />\n- Auto creation of cache dir.<br />\n- More options to register files on frontend.<br />\n<br />\n1.1.3 (07.01.2013)<br />\n==============<br />\n- absolute path in the URL attribute of all compressed files.<br />\n<br />\n1.1.2 (11.09.2012)<br />\n==============<br />\n- Improved caching of minified files.<br />\n<br />\n1.1.1 (10.09.2012)<br />\n==============<br />\n- Removed E_WARNING on line 94 of minifyx.class.php<br />\n<br />\n1.1.0 (09.09.2012)<br />\n==============<br />\n- Changed css minifier to Minify_CSS_Compressor from https://code.google.com/p/minify/<br />\n- Added Douglas Crockford''s JSMin https://github.com/rgrove/jsmin-php/ <br />\n- Serious refactor of code<br />\n- Added properties to snippet<br />\n- Removed plugin<br />\n- Improved caching of files<br />\n- Added parameters jsFilename && cssFilename<br />\n<br />\n<br />\n1.0.0<br />\n==============<br />\n- Initial Version";s:8:"children";a:0:{}}i:25;a:4:{s:4:"name";s:10:"releasedby";s:10:"attributes";a:0:{}s:4:"text";s:1:"6";s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:19:"2014-07-22 11:33:41";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:3:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:10:"version_id";s:10:"attributes";a:0:{}s:4:"text";s:3:"237";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:29:"Василий Наумкин";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:16:"minifyx-1.3.1-pl";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:5:"mysql";s:8:"children";a:0:{}}i:34;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:114:"http://modstore.pro/extras/download?package_id=18&version_id=237&username=&api_key=&http_host=visualisation.wi6.ru";s:8:"children";a:0:{}}i:35;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:2:{i:0;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:114:"http://modstore.pro/extras/download?package_id=18&version_id=237&username=&api_key=&http_host=visualisation.wi6.ru";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}}}}', 1, 3, 1, 'pl', 0);
INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('tinymcerte-1.0.0-beta', '2015-03-25 01:53:11', '2015-03-25 10:53:24', '2015-03-25 13:53:24', 0, 1, 1, 0, 'tinymcerte-1.0.0-beta.transport.zip', NULL, 'a:33:{s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:193:"---------------------------------------\nTinyMCE Rich Text Editor\n---------------------------------------\nVersion: 1.0.0\nAuthor: John Peca <john@modx.com>\n---------------------------------------";s:9:"changelog";s:105:"Changelog for TinyMCE Rich Text Editor.\n\nTinyMCE Rich Text Editor 1.0.0\n==============\n- Initial release.";s:9:"signature";s:21:"tinymcerte-1.0.0-beta";s:13:"initialConfig";s:15:"[object Object]";s:4:"text";s:20:"Продолжить";s:2:"id";s:19:"package-install-btn";s:6:"hidden";s:5:"false";s:7:"handler";s:557:"function (va){var g=Ext.getCmp(''modx-package-grid'');if(!g)return false;var r=g.menu.record.data?g.menu.record.data:g.menu.record;var topic=''/workspace/package/install/''+r.signature+''/'';g.loadConsole(Ext.getBody(),topic);va=va||{};Ext.apply(va,{action:''workspace/packages/install'',signature:r.signature,register:''mgr'',topic:topic});MODx.Ajax.request({url:MODx.config.connector_url,params:va,listeners:{''success'':{fn:function(){this.activate();Ext.getCmp(''modx-package-grid'').refresh();},scope:this},''failure'':{fn:function(){this.activate();},scope:this}}});}";s:5:"scope";s:15:"[object Object]";s:8:"minWidth";s:2:"75";s:10:"removeMode";s:9:"container";s:10:"hideParent";s:4:"true";s:6:"events";s:15:"[object Object]";s:7:"ownerCt";s:15:"[object Object]";s:9:"container";s:15:"[object Object]";s:8:"rendered";s:4:"true";s:8:"template";s:15:"[object Object]";s:5:"btnEl";s:15:"[object Object]";s:4:"mons";s:15:"[object Object]";s:2:"el";s:15:"[object Object]";s:4:"icon";s:0:"";s:7:"iconCls";s:0:"";s:8:"boxReady";s:4:"true";s:8:"lastSize";s:15:"[object Object]";s:11:"useSetClass";s:4:"true";s:6:"oldCls";s:12:"x-btn-noicon";s:3:"doc";s:15:"[object Object]";s:19:"monitoringMouseOver";s:4:"true";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:49:"/workspace/package/install/tinymcerte-1.0.0-beta/";s:14:"package_action";i:0;}', 'TinyMCE Rich Text Editor', 'a:38:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"54eb652ddc532f725a02bf65";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:24:"54eb652ddc532f725a02bf64";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:21:"tinymcerte-1.0.0-beta";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:24:"TinyMCE Rich Text Editor";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"1.0.0";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:4:"beta";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:8:"vrelease";s:10:"attributes";a:0:{}s:4:"text";s:4:"beta";s:8:"children";a:0:{}}i:10;a:3:{s:4:"name";s:14:"vrelease_index";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:8:"theboxer";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:22:"<p>Initial content</p>";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:53:"<p>Download and install via MODX package manager.</p>";s:8:"children";a:0:{}}i:14;a:3:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-02-23T17:36:45+0000";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:8:"theboxer";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-03-25T10:35:03+0000";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-02-23T17:36:45+0000";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"1202";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:21;a:4:{s:4:"name";s:7:"audited";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:25;a:3:{s:4:"name";s:7:"smf_url";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:24:"4d4c3fa6b2b0830da9000001";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=54eb652ddc532f725a02bf66";s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:21:"tinymcerte-1.0.0-beta";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:5:"mysql";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:9:"breaks_at";s:10:"attributes";a:0:{}s:4:"text";s:8:"10000000";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:79:"http://modx.s3.amazonaws.com/extras%2F54eb652ddc532f725a02bf64%2Ftinymcerte.png";s:8:"children";a:0:{}}i:34;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:7:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"54eb652ddc532f725a02bf66";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:24:"54eb652ddc532f725a02bf65";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:8:"filename";s:10:"attributes";a:0:{}s:4:"text";s:35:"tinymcerte-1.0.0-beta.transport.zip";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"1206";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:6:"lastip";s:10:"attributes";a:0:{}s:4:"text";s:14:"91.206.200.139";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=54eb652ddc532f725a02bf66";s:8:"children";a:0:{}}}}i:35;a:4:{s:4:"name";s:17:"package-signature";s:10:"attributes";a:0:{}s:4:"text";s:21:"tinymcerte-1.0.0-beta";s:8:"children";a:0:{}}i:36;a:4:{s:4:"name";s:10:"categories";s:10:"attributes";a:0:{}s:4:"text";s:15:"richtexteditors";s:8:"children";a:0:{}}i:37;a:3:{s:4:"name";s:4:"tags";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}}', 1, 0, 0, 'beta', 0);
INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('clientconfig-1.3.1-pl', '2015-04-13 08:33:31', '2015-04-13 05:33:45', '2015-04-13 08:33:45', 0, 1, 1, 0, 'clientconfig-1.3.1-pl.transport.zip', NULL, 'a:33:{s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:832:"----------------------\nClientConfig\n----------------------\nVersion: 1.0.0\nAuthor: Mark Hamstra\nContact: mark@modx.com\n----------------------\n\nClientConfig is the by product of a workshop at MODXpo Europe 2012,\nthe "Developing Extras in MODX" one. See the session page at modxpo.eu\nhttp://modxpo.eu/schedule/sessions/developing-extras-for-modx-hands-on\nfor more information and footage of the workshop.\n\nClientConfig gives your client a user-friendly interface for making site\nwide changes, while you as the administrator set up the different options\navailable to the end-user.\n\nPossible uses include:\n- Regularly update a slogan or tag-line in header or footer\n- Change call-to-action button colors based on the season\n- Keep contact details updated in one central location\n- Update the email-address a form sends notifications to.\n";s:9:"changelog";s:2674:"++ ClientConfig 1.3.1-pl\n++ Released on 2014-07-20\n+++++++++++++++++++++++++\n- Update Dutch translation\n- More weird border fixes\n- Minor fix to when borders are added, specifically for 2.2.\n\n++ ClientConfig 1.3.0-pl\n++ Released on 2014-07-19\n+++++++++++++++++++++++++\n- #27 Ability to import/export groups and settings\n- #16 Auto-select first group when adding a setting\n- #15 Force admins to create a group before creating a setting, as settings need groups\n- #76 Fix issue where unchecking a checkbox would fail if the setting was required\n- #78 Make the is_required column show Yes/No instead of true/false\n- #60 Get rid of an extra border\n- #75 Update help link to point to modmore.com\n\n++ ClientConfig 1.2.1-pl\n++ Released on 2014-01-07\n+++++++++++++++++++++++++\n- #57 Add Google Font input type (Thanks @garryn)\n- #63 Fix issue loading more than one rich text field\n\n++ ClientConfig 1.2.0-pl\n++ Released on 2013-08-16\n+++++++++++++++++++++++++\n- #38 Add setting (vertical_tabs) to allow stacking groups vertically instead of horizontal tabs\n- #46 Add ability to duplicate a setting\n- #45 Show field options field when editing a select box setting.\n- #54 Add Rich Text input type.\n- Improved width consistency of input items.\n- #37 Added input type Image (thanks COEX!)\n- #3 Fix/add colorpicker input type (thanks COEX!)\n\n++ ClientConfig 1.1.2-pl\n++ Released on 2013-03-07\n+++++++++++++++++++++++++\n- Add/update translations: Russian (thx @Alroniks!), German (thx @enigmatic-user!), Swedish (thx @fractalwolfe!) and Dutch.\n- #47 Show field descriptions under the fields. (Thanks @fractalwolfe!)\n- #40 Add placeholder tooltips with the [[++key]] for admins. (Thanks @fractalwolfe!)\n\n++ ClientConfig 1.1.1-pl\n++ Released on 2012-12-31\n+++++++++++++++++++++++++\n- #35 Don''t strip out tags when saving values (relies on allow_tags_in_post=true in mgr context).\n- #39 Increase database field max sizes for longer descriptions and values.\n- #33 Make sure to show message when no tabs are to be shown.\n- #34 Prevent E_WARNING when there are no settings configured.\n\n++ ClientConfig 1.1.0-pl\n++ Released on 2012-12-16\n+++++++++++++++++++++++++\n- #26 Add ability to manually sort Settings within a Group\n- #25 Add ability to manually sort Groups\n- #21 Add Filter on Group for settings.\n- #24 Remember last visited tab in both admin and client view.\n- #22 Add "Help!" button on Admin panel linking to RTFM instructions.\n- Improve checking if key exists on updating a setting.\n- #30 Fix bug with incorrectly checking cgSetting.is_required checkbox\n- Make controller a tad more portable.\n\n++ ClientConfig 1.0.0-pl\n++ Released on 2012-12-09\n+++++++++++++++++++++++++\nFirst release\n";s:9:"signature";s:21:"clientconfig-1.3.1-pl";s:13:"initialConfig";s:15:"[object Object]";s:4:"text";s:20:"Продолжить";s:2:"id";s:19:"package-install-btn";s:6:"hidden";s:5:"false";s:7:"handler";s:557:"function (va){var g=Ext.getCmp(''modx-package-grid'');if(!g)return false;var r=g.menu.record.data?g.menu.record.data:g.menu.record;var topic=''/workspace/package/install/''+r.signature+''/'';g.loadConsole(Ext.getBody(),topic);va=va||{};Ext.apply(va,{action:''workspace/packages/install'',signature:r.signature,register:''mgr'',topic:topic});MODx.Ajax.request({url:MODx.config.connector_url,params:va,listeners:{''success'':{fn:function(){this.activate();Ext.getCmp(''modx-package-grid'').refresh();},scope:this},''failure'':{fn:function(){this.activate();},scope:this}}});}";s:5:"scope";s:15:"[object Object]";s:8:"minWidth";s:2:"75";s:10:"removeMode";s:9:"container";s:10:"hideParent";s:4:"true";s:6:"events";s:15:"[object Object]";s:7:"ownerCt";s:15:"[object Object]";s:9:"container";s:15:"[object Object]";s:8:"rendered";s:4:"true";s:8:"template";s:15:"[object Object]";s:5:"btnEl";s:15:"[object Object]";s:4:"mons";s:15:"[object Object]";s:2:"el";s:15:"[object Object]";s:4:"icon";s:0:"";s:7:"iconCls";s:0:"";s:8:"boxReady";s:4:"true";s:8:"lastSize";s:15:"[object Object]";s:11:"useSetClass";s:4:"true";s:6:"oldCls";s:12:"x-btn-noicon";s:3:"doc";s:15:"[object Object]";s:19:"monitoringMouseOver";s:4:"true";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:49:"/workspace/package/install/clientconfig-1.3.1-pl/";s:14:"package_action";i:0;}', 'ClientConfig', 'a:38:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"54c11d33dc532f5cee02b9d8";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:24:"50c3f87ef245542fc1000033";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:21:"clientconfig-1.3.1-pl";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:12:"ClientConfig";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"1.3.1";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"3";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:8:"vrelease";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:10;a:3:{s:4:"name";s:14:"vrelease_index";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:5:"MarkH";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:822:"<p></p><p></p><p>ClientConfig gives your client a user-friendly interface for making site&nbsp;wide changes, while you as the administrator set up the different options&nbsp;available to the end-user.</p><p>Possible uses include:</p><p></p><ul><li>Regularly update a slogan or tag-line in header or footer</li><li>Change call-to-action button colors based on the season</li><li>Keep contact details updated in one central location</li><li>Update the email-address a form sends notifications to.</li></ul><p><a href="https://github.com/Mark-H/ClientConfig" title="" target="">Please report bugs and feature requests on Github</a>, and <a href="http://forums.modx.com/thread/81490/clientconfig-custom-configuration-cmp-for-clients#dis-post-449423" title="" target="">chat about it on the Forums</a>.</p><p></p><p></p><p></p>";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:568:"<p>To install, simply grab the package through package manager and install it. Navigate to the component in the components directory, hit the admin button in the top right, and start configuring settings for your clients to maintain.&nbsp;</p><p>You can use the values from the settings by using either the system setting tag syntax &#91;&#91;++key&#93;&#93;, or by using $modx-&gt;getOption(''key'') in code.&nbsp;</p><p>For further information, <a href="https://www.modmore.com/extras/clientconfig/documentation/" title="" target="">refer to the documentation</a>.</p>";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:4394:"<p></p><ul style="margin-bottom: 15px; color: rgb(119, 119, 119); font-family: helvetica, arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"></ul><p></p><p style="margin-bottom: 15px; orphans: auto; text-align: start; text-indent: 0px; widows: auto;"><b>ClientConfig 1.3.1-pl</b> :: 2014-07-20&nbsp;</p><p style="margin-bottom: 15px; orphans: auto; text-align: start; text-indent: 0px; widows: auto;"><ul><li>Update Dutch translation</li><li>More weird border fixes</li><li>Minor fix to when borders are added, specifically for 2.2.</li></ul></p><p style="margin-bottom: 15px; color: rgb(119, 119, 119); font-family: helvetica, arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><b>ClientConfig v1.3.0</b>&nbsp;:: July 19th, 2014</p><p></p><ul><li>#27 &nbsp;Ability to import/export groups and settings</li><li>#16 &nbsp;Auto-select first group when adding a setting</li><li>#15 &nbsp;Force admins to create a group before creating a setting, as settings need groups</li><li>#76 &nbsp;Fix issue where unchecking a checkbox would fail if the setting was required</li><li>#78 &nbsp;Make the is_required column show Yes/No instead of true/false</li><li>#60 &nbsp;Get rid of an extra border</li><li>#75 &nbsp;Update help link to point to modmore.com</li></ul><p></p><p style="margin-bottom: 15px; color: rgb(119, 119, 119); font-family: helvetica, arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><b>ClientConfig v1.2.1</b>&nbsp;:: January 7th, 2014&nbsp;</p><ul><li>#57 &nbsp;Add Google Font input type (Thanks @garryn)</li><li>#63 &nbsp;Fix issue loading more than one rich text field</li></ul><p><b>ClientConfig v1.2.0</b>&nbsp;:: August 16th, 2013 (modmore.com) / November 14th, 2013 (modx.com)</p><ul><li>#38 &nbsp;Add setting (vertical_tabs) to allow stacking groups vertically instead of horizontal tabs</li><li>#46 &nbsp;Add ability to duplicate a setting</li><li>#45 &nbsp;Show field options field when editing a select box setting.</li><li>#54 &nbsp;Add Rich Text input type.</li><li>Improved width consistency of input items.</li><li>#37 &nbsp;Added input type Image (thanks COEX!)</li><li>#3 &nbsp; Fix/add colorpicker input type (thanks COEX!)</li></ul><p><b>ClientConfig v1.1.2</b>&nbsp;:: March 7th, 2012<b></b></p><p></p><ul><li>Add/update translations: Russian (thx @Alroniks!), German (thx @enigmatic-user!), Swedish (thx @fractalwolfe!) and Dutch.</li><li>#47 &nbsp;Show field descriptions under the fields. (Thanks @fractalwolfe!)</li><li>#40 &nbsp;Add placeholder tooltips with the &#91;&#91;++key&#93;&#93; for admins. (Thanks @fractalwolfe!)</li></ul><p></p><p><b>ClientConfig v1.1.1</b> :: December 31st, 2012</p><p></p><ul><li>#35 &nbsp;Don''t strip out tags when saving values.</li><li>#39 &nbsp;Increase database field max sizes for longer descriptions and values.</li><li>#33 &nbsp;Make sure to show message when no tabs are to be shown.</li><li>#34 &nbsp;Prevent E_WARNING when there are no settings configured.</li></ul><p></p><p><b>ClientConfig v1.1.0</b>&nbsp;:: December 16th, 2012</p><p></p><p></p><ul><li>#26 &nbsp;Add ability to manually sort Settings within a Group</li><li>#25 &nbsp;Add ability to manually sort Groups</li><li>#21 &nbsp;Add Filter on Group for settings.</li><li>#24 &nbsp;Remember last visited tab in both admin and client view.</li><li>#22 &nbsp;Add "Help!" button on Admin panel linking to RTFM instructions.</li><li>Improve checking if key exists on updating a setting.</li><li>#30 &nbsp;Fix bug with incorrectly checking cgSetting.is_required checkbox</li><li>Make controller a tad more portable.</li></ul><p><b>ClientConfig v1.0.0</b>&nbsp;:: December 9th, 2012</p><p></p><p>Initial release.</p><p></p>";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-01-22T15:54:27+0000";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:5:"MarkH";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-04-13T04:35:07+0000";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-01-22T15:54:27+0000";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"6678";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:21;a:4:{s:4:"name";s:7:"audited";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:25;a:3:{s:4:"name";s:7:"smf_url";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:24:"4d4c3fa6b2b0830da9000001";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=54c11d35dc532f5cee02b9da";s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:21:"clientconfig-1.3.1-pl";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:5:"mysql";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:9:"breaks_at";s:10:"attributes";a:0:{}s:4:"text";s:8:"10000000";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:84:"http://modx.s3.amazonaws.com/extras/50c3f87ef245542fc1000033/clientconfigscreeny.png";s:8:"children";a:0:{}}i:34;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:7:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"54c11d35dc532f5cee02b9da";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:24:"54c11d33dc532f5cee02b9d8";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:8:"filename";s:10:"attributes";a:0:{}s:4:"text";s:35:"clientconfig-1.3.1-pl.transport.zip";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"1099";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:6:"lastip";s:10:"attributes";a:0:{}s:4:"text";s:14:"182.253.73.102";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=54c11d35dc532f5cee02b9da";s:8:"children";a:0:{}}}}i:35;a:4:{s:4:"name";s:17:"package-signature";s:10:"attributes";a:0:{}s:4:"text";s:21:"clientconfig-1.3.1-pl";s:8:"children";a:0:{}}i:36;a:4:{s:4:"name";s:10:"categories";s:10:"attributes";a:0:{}s:4:"text";s:61:"administration,administration,personalization,personalization";s:8:"children";a:0:{}}i:37;a:3:{s:4:"name";s:4:"tags";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}}', 1, 3, 1, 'pl', 0);
INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('migx-2.9.0-pl', '2015-04-13 09:37:01', '2015-04-13 06:37:27', '2015-04-13 09:37:27', 0, 1, 1, 0, 'migx-2.9.0-pl.transport.zip', NULL, 'a:10:{s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:1392:"--------------------\nMIGX\n--------------------\nVersion: 2.1.0\nAuthor: Bruno Perner <b.perner@gmx.de>\n--------------------\n\n* MIGX (multiItemsGridTv for modx) is a custom-tv-input-type for adding multiple items into one TV-value and a snippet for listing this items on your frontend.\n* It has a configurable grid and a configurable tabbed editor-window to add and edit items.\n* Each item can have multiple fields. For each field you can use another tv-input-type.\n\nFeel free to suggest ideas/improvements/bugs on GitHub:\nhttp://github.com/Bruno17/multiItemsGridTV/issues\n\nInstallation:\n\ninstall by package-management.\nCreate a new menu:\nSystem -> Actions \n\nActions-tree:\nmigx -> right-click -> create Acton here\ncontroller: index\nnamespace: migx\nlanguage-topics: migx:default,file\n\nmenu-tree:\nComponents -> right-click -> place action here\nlexicon-key: migx\naction: migx - index\nparameters: &configs=migxconfigs||packagemanager||setup\n\nclear cache\ngo to components -> migx -> setup-tab -> setup\n\nIf you are upgrading from MIGX - versions before 2.0\ngo to tab upgrade. click upgrade.\nThis will add a new autoincrementing field MIGX_id to all your MIGX-TV-items\nThe getImageList-snippet needs this field to work correctly.\n\n\nAllways after upgrading MIGX of any Version:\ngo to components -> migx -> setup-tab -> setup\n\nthis will upgrade the migx-configs-table and add new fields, if necessary.\n\n\n";s:9:"changelog";s:8677:"Changelog for MIGX.\n\nMIGX 2.9\n==============\n[migxLoopCollection] allow use of foreign database\nSottwell''s improvements on migxresourcemediapath\nnew snippet: migxGetCollectionTree\naccess to foreign database from default processors\nimprovements on multiple formtabs\nmake inline-editing for MIGX - grid possible\noption to add MIGX-items directly without modal\nlistbox-cell-editor\nmovetotop,movetobottom - buttons for MIGX-grid\ncell-editing for MIgXdb - grids\noption to add MIGXdb-items directly without modal\n[getImageList] &inheritFrom - inherit MIGX-items from parents or other resources\nsome migxredactor - fixes \n\nMIGX 2.8.1\n==============\nlets disable the ''Add Item'' - button\nnew configs gridperpage and sortconfig\nwrapperTpl for getImageList and migxLoopCollection\n\nMIGX 2.8.0\n==============\nresolve tables on install\nrender cross, also when empty string\nreusable activaterelations - processors\n[migxLoopCollection] tpl_nN\n[#154] clean TV-value, if no MIGX-items \nadditional db-storage of formtabs and fields\nget menue working in MODX 2.3\nimprove description_is_code \n\n\nMIGX 2.6.8\n==============\nsome other small fixes\nrestrictive condition by processed MIGX-tags for formfields\nFilter-Button for Reset all filters to default-value\nextend date-filter\nmake cmp main caption translatable \nMigx::prepareJoins - optional rightjoin \n\nMIGX 2.6.7\n==============\nadd date - filter \nadd handlepositionselector - processor \nadd snippet exportmigx2db\n\nMIGX 2.6.6\n==============\nfixes only\n\nMIGX 2.6.5\n==============\nfixes only\n\nMIGX 2.6.4\n==============\n[redactor-field] get and use file-properties from a redactor-inputTV\nadd renderImageFromHtml - renderer\n\nMIGX 2.6.3\n==============\nconfigurable redactor-field with configs-configuration, make redactor work in MIGXdb - CMP\n\nMIGX 2.6.2\n==============\nfix issue with imported configs-field, if not an array \n\nMIGX 2.6.1\n==============\nMake Formfields translatable\n\nMIGX 2.6\n==============\n[getImageList] output inner arrays as json-string\nadded polish translation\n[getImageList] splits, build summaries\n make grid-columns translatable, let user add custom-lexicons from custom php-config-files \n\n\nMIGX 2.5.11\n==============\nadd simple MIGXdb - validation (only required for now)\nsome fixes\n\n\nMIGX 2.5.9\n==============\nlet us create new indexes, with altered field-def from schema \noptimize input-option-values-handling, see:http://forums.modx.com/thread/79757/sortable-editable-list-of-checkboxes?page=4#dis-post-483240\n\n\nMIGX 2.5.8\n\n==============\nAdded ''showScreenshot'' (big image in popup) \nAdded template-field for direct template-input for renderChunk\nAdded position - selector for new MIGX - items\nFix for not removed rte-editors when using formswitcher\nsend current store-params to iframe-window\n\n\nMIGX 2.5.6\n\n==============\n\nAdd support for the modmore.com Redactor editor \nsome work on multiuploader for MIGXdb\nmore eNotice - fixes\n\n\nMIGX 2.5.2\n\n==============\nread input-options into MIGX-TV\nrespect filter in default - export.php\nfix for empty value in TV - configs not loading renderers etc.\nfix changed processaction-param after export2csv \nstopEvent() by onClick - event\n\nMIGX 2.5.1\n\n==============\nfix bug with renderChunk - renderer\n\nMIGX 2.5\n\n==============\nget different rtes working - support for tinymce, ckeditor \nsome settings for MIGXfe\ncs - lexicons, \nsome eNotice - fixes\nfix with to big integers on TV-id (set phptype to string)\nlimit MIGX-record-count\n\n\nMIGX 2.4.2\n\n==============\ncolumnButtons for the migx - grid \nlittle form-layout-mods\nadded the option to have the first formtab outside the other tabs above of them.\n\nadded the option to use the TV-description-field as parsed code-areas in the formtabs, modx-tags are parsed there - \nsnippets, chunks, output-filters can be used there. All fields of the record can be used as placeholders.\n\nmigxupdate for MIGXfe\ndefault-values for MIGXdb-filters\nupdate co_id in iframe-window\nadd a searchbox to MIGX-Configurator\nread configs directly from exported configs-files from custom-packages - directory by using configname:packagename - configs\n\n\nMIGX 2.4.1\n\n==============\nsome new snippets:\ngetDayliMIGXrecord\nmigxgetrelations\n\nadded beta treecombo-filter-option for example to filter resources in MIGXdb by resourcetree\nadd window-title configuration, make window-caption dynamic (its possible to use placeholders now)\nhide tabs in form, when only one tab\nadded selectposition - renderer\n\n\nMIGX 2.4.0\n\n==============\nnew renderer - switchStatusOptions\nnew renderer - renderChunk\ngetImageList - added ''contains'' and ''snippet'' - where-filters\nadd duplicate-contextmenue to MIGXdb \nnew property for getImageList: &reverse\ngive TVs in each CMP-tab a unique id\nrefresh grid after closing iframe-window\nadded tpl_n{n} tplFirst tplLast tpl_n tpl_oneresult properties to getImageList\nexport jsonarray-fields as separate fields in csv-export\nalias, breadcrumb and ultimateparent for migxREsourceMediaPath\nAdded TV - description - field to configuration\n\n\nMIGX 2.3.1\n\n==============\nsome eNotice - error - fixes\nadd type - configuration to gridcolumns, now its possible to sort also numeric on the MIGX - grid: see https://github.com/Bruno17/MIGX/issues/41\n\nMIGX 2.3.0\n\n==============\nadd multifile - uploader, upload to MIGX - mediasource\nadd load from mediasource - button to MIGX\nadd migxResourcePath - snippet\nadd iframe - support - its now possible to create chunks with snippet-calls and show the result in an iframe-window. used by multifile-uploader.\n\n\nMIGX 2.2.3\n\n==============\nconfirmation before overriding schema-files\nsome additions for childresources-management by MIGXdb\nswitch between multiple forms - configurations\nadd renderDate - renderer , thanks to Jako\nadditional send all store-baseParams when opening the form-window. This way we can have different forms depending on filters for example.\nadd parent-property for dynamic filter-comboboxes\nadd getliste-where for default getlist-processor\nexport formtabs as clean json in editraw-mode\n\n\nMIGX 2.2.2\n\n==============\nadd migxLoopCollection-snippet\nmove prepareJoins into a migx-method\nconfirmation before remove db-record, getcombo did not use idfield \nallow empty prefix \nadd possibility to use tables without ''deleted'' - field and default-getlist-processor\nfix Call-time pass-by-reference errors\nget tinyMCE to work on richtext-TV-inputs in MIGXdb - CMPs \nfix prefix not sended to writeSchema\ngrid add cls ''main-wrapper'' to give it a bit padding, thanks to jako\n\n\nMIGX 2.2.0\n\n==============\n\nexport/import configuration-objects as json to/from files in custom-package-directories \nnew configs: getlist - defaultsort, joins, gridload_mode (by button, auto) \ngrid-smarty-template now can be also in custom-package-directories\nreworked handling of joined objects in default update-php \nadd connected_object_id baseparam to migx-grid\nadded snippet migxLoopCollection\n\n\nMIGX 2.1.1\n\n==============\n\n  fix for migx-snippet not working with multiple calls on one page\n  resource_id as script-property for getlist-processor when used with migx-snippet\n\nMIGX 2.1.0\n\n==============\n\n  add &sort to the getImageList - snippet\n  add new snippet ''migx'' to get items from db-tables, can use the same configurations and getList - processors as the MIGXdb - manager\n  make it possible to have config-files for grids and processors in another package-folder for easier packaging together custom - packages\n  more MIGXdb - configurations\n\n\nMIGX 2.0.1\n\n==============\n\n  more E_NOTICE - Error - fixes\n  Fix Missing Add - Item - Replacement - String \n\nMIGX 2.0.0\n\n==============\n\n- pl\n\n  fix for Revo 2.2.2\n  fix some E_NOTICE - errors\n\n- new in beta5\n\n  Configure multiple CMP - tabs\n  packagemanager ported to extjs - tab\n  added MIGX-setup/upgrade - tab\n  added configurable text and combo - filterboxes\n\n- new in beta3\n\n  This is a preview-version of MIGXdb\n  MIGXdb can now also be used as configurable CMP\n  MIGX - configurator for tabs, columns, MIGXdb-TV and MIGXdb-CMP\n  Package-manager, create and edit schemas and package-tables\n\n- new:\n  better compatibility with revo 2.2\n  working with mediasources\n  introduced MIGXdb\n\n\nMIGX 1.2.0\n==============\n- new:\n  merge scriptProperties to Placeholders \n  basic compatibility for modx 2.2 \n  autoinc-field: MIGX_id\n  autoResourceFolders - functionality, autoCreate directory for each resource\n  \n  \n- fixed:\n  url-TV support\n  context-based base_path issues\n  remove remaining []\n  remove Tiny-instances when switching form\n  enter on textarea closes window\n  fireResourceFormChange for drag,remove,duplicate \n\nMIGX 1.1.0\n==============\n- new:\n  &docidVarKey\n  &processTVs\n  \n- fixed:\n  context-filepath-issue\n\nMIGX 1.0.0\n==============\n- Initial release.";s:13:"setup-options";s:31:"migx-2.9.0-pl/setup-options.php";s:9:"signature";s:13:"migx-2.9.0-pl";s:14:"menu_placement";s:6:"topnav";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:41:"/workspace/package/install/migx-2.9.0-pl/";s:14:"package_action";i:0;}', 'MIGX', 'a:38:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"549919e6dc532f2c5906524d";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:24:"4db018def24554690c000005";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:13:"migx-2.9.0-pl";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:4:"MIGX";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"2.9.0";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"2";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"9";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"0";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:8:"vrelease";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:10;a:3:{s:4:"name";s:14:"vrelease_index";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:7:"Bruno17";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:676:"<p>MIGX (multiItemsGridTv for modx) is a custom-tv-input-type for adding multiple items into one TV-value and a snippet for listing this items on your frontend.</p><p>It has a cofigurable grid and a configurable tabbed editor-window to add and edit items.</p><p>Each item can have multiple fields. For each field you can use another tv-input-type.</p><p>MIGXdb can manage (resource-related) custom-db-table-items in a TV and can help to create CMPs for custom-db-tables</p><p>See the official documentation here:&nbsp;<a href="http://rtfm.modx.com/display/addon/MIGX" style="color: rgb(15, 112, 150); " title="" target="">http://rtfm.modx.com/display/addon/MIGX</a></p><p></p>";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:5876:"<p></p><p style="margin: 10px 0px 20px; padding: 0px; border-width: 0px; outline-width: 0px; font-size: 13px; vertical-align: baseline; background-color: transparent; line-height: 1.4;">Installation:Install via Package Management.</p><p style="margin: 10px 0px 20px; padding: 0px; border-width: 0px; outline-width: 0px; font-size: 13px; vertical-align: baseline; background-color: transparent; line-height: 1.4;">For MIGX and MIGXdb - Configuration - Management:</p><p style="margin-top: 10px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; line-height: 1.4; background-position: initial initial; background-repeat: initial initial; ">Create a new menu:System -&gt; Actions Actions-tree:migx -&gt; right-click -&gt; create Acton herecontroller: indexnamespace: migxlanguage-topics: migx:default,filemenu-tree:Components -&gt; right-click -&gt; place action herelexicon-key: migxaction: migx - indexparameters: &amp;configs=migxconfigs||packagemanager||setupclear cachego to components -&gt; migx -&gt; setup-tab -&gt; setupIf you are upgrading from MIGX - versions before 2.0go to tab upgrade. click upgrade.This will add a new autoincrementing field MIGX_id to all your MIGX-TV-itemsThe getImageList-snippet needs this field to work correctly.</p><p style="margin-top: 10px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; line-height: 1.4; background-position: initial initial; background-repeat: initial initial; "><b style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; background-position: initial initial; background-repeat: initial initial; ">Note:</b>&nbsp;Make sure to remove older versions of multiItemsGridTv and the multiitemsgridTv-namespace, if you had them tried from Github.</p><p style="margin-top: 10px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; line-height: 1.4; background-position: initial initial; background-repeat: initial initial; "><b style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; background-position: initial initial; background-repeat: initial initial; ">Note</b>: Input Options for the MIGX only work for Revolution 2.1.0-rc2 and later.</p><p style="margin-top: 10px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; line-height: 1.4; background-position: initial initial; background-repeat: initial initial; "></p><p style="margin-top: 10px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; line-height: 1.4; background-position: initial initial; background-repeat: initial initial; "></p>";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:10382:"<p>Changelog for MIGX.</p><p>MIGX 2.9.0==============</p><ul><li>&#91;migxLoopCollection&#93; allow use of foreign database</li><li>Sottwell''s improvements on migxresourcemediapath</li><li>new snippet: migxGetCollectionTree</li><li>access to foreign database from default processors</li><li>improvements on multiple formtabs</li><li>make inline-editing for MIGX - grid possible</li><li>option to add MIGX-items directly without modal</li><li>listbox-cell-editor</li><li>movetotop,movetobottom - buttons for MIGX-grid</li><li>cell-editing for MIgXdb - grids</li><li>option to add MIGXdb-items directly without modal</li><li>&#91;getImageList&#93; &amp;inheritFrom - inherit MIGX-items from parents or other resources</li><li>some migxredactor - fixes </li></ul><p></p><p>MIGX 2.8.1==============</p><ul><li>lets disable the ''Add Item'' - button</li><li>new configs gridperpage and sortconfig</li><li>wrapperTpl for getImageList and migxLoopCollection</li></ul><p>MIGX 2.8.0==============</p><ul><li>resolve tables on install</li><li>render cross, also when empty string</li><li>reusable activaterelations - processors</li><li>&#91;migxLoopCollection&#93; tpl_nN</li><li>&#91;#154&#93; clean TV-value, if no MIGX-items </li><li>additional db-storage of formtabs and fields</li><li>get menue working in MODX 2.3</li><li>improve description_is_code </li></ul><p></p><p>MIGX 2.6.8==============</p><ul><li>some other small fixes</li><li>restrictive condition by processed MIGX-tags for formfields</li><li>Filter-Button for Reset all filters to default-value</li><li>extend date-filter</li><li>make cmp main caption translatable </li><li>Migx::prepareJoins - optional rightjoin </li></ul><p></p><p>MIGX 2.6.7==============</p><ul><li>add date - filter </li><li>add handlepositionselector - processor </li><li>add snippet exportmigx2db</li></ul><p>MIGX 2.6.6==============</p><ul><li>fixes only</li></ul><p></p><p>MIGX 2.6.5==============</p><ul><li>fix bug with migxResourceMediaPath</li></ul><p>MIGX 2.6.5==============</p><ul><li>fix not working richtext-editors in MIGXdb</li><li>add emptyThrash - process to MIGXdb</li></ul><p>MIGX 2.6.4==============</p><ul><li>&#91;redactor-field&#93; get and use file-properties from a redactor-inputTV</li><li>add renderImageFromHtml - renderer</li></ul><p>MIGX 2.6.3==============</p><ul><li>configurable redactor-field with configs-configuration, make redactor work in MIGXdb - CMP</li></ul><p></p><p>MIGX 2.6.2</p><p>==============</p><ul><li>fix issue with imported configs-field, if not an array\n      </li></ul><p></p><p>MIGX 2.6.1</p><p>==============</p><ul><li>Make Formfields translatable</li></ul><p></p><p>MIGX 2.6</p><p>==============</p><ul><li>&#91;getImageList&#93; output inner arrays as json-string</li><li>added polish translation</li><li>&#91;getImageList&#93; splits, build summaries</li><li>&nbsp;make grid-columns translatable, let user add custom-lexicons from custom php-config-files </li></ul><p>MIGX 2.5.11</p><p>==============</p><ul><li>add simple MIGXdb - validation (only required for now)</li><li>some fixes</li></ul><p></p><p>MIGX 2.5.9</p><p>==============</p><ul><li>let us create new indexes, with altered field-def from schema </li><li>optimize input-option-values-handling, see:http://forums.modx.com/thread/79757/sortable-editable-list-of-checkboxes?page=4#dis-post-483240</li></ul><p></p><p>MIGX 2.5.8</p><p>==============</p><ul><li>Added ''showScreenshot'' (big image in popup) </li><li>Added template-field for direct template-input for renderChunk</li><li>Added position - selector for new MIGX - items</li><li>Fix for not removed rte-editors when using formswitcher</li><li>send current store-params to iframe-window</li></ul><p></p><p>MIGX 2.5.6</p><p>==============</p><ul><li>Add support for the modmore.com Redactor editor\n</li><li>some work on multiuploader for MIGXdb</li><li>more eNotice - fixes</li></ul><p></p><p>MIGX 2.5.2</p><p>==============</p><ul><li>read input-options into MIGX-TV</li><li>respect filter in default - export.php</li><li>fix for empty value in TV - configs not loading renderers etc.</li><li>fix changed processaction-param after export2csv </li><li>stopEvent() by onClick - event</li></ul><p></p><p>MIGX 2.5.1</p><p>==============</p><ul><li>fix bug with renderChunk - renderer</li></ul><p></p><p>MIGX 2.5</p><p>==============</p><ul><li>get different rtes working - support for tinymce, ckeditor </li><li>some settings for MIGXfe</li><li>cs - lexicons, </li><li>some eNotice - fixes</li><li>fix with to big integers on TV-id (set phptype to string)</li><li>limit MIGX-record-count</li></ul><p></p><p>MIGX 2.4.2</p><p>==============</p><ul><li>columnButtons for the migx - grid </li><li>little form-layout-mods</li><li>added the option to have the first formtab outside the other tabs above of them.</li><li>added the option to use the TV-description-field as parsed code-areas in the formtabs, modx-tags are parsed there - </li><li>snippets, chunks, output-filters can be used there. All fields of the record can be used as placeholders.</li><li>migxupdate for MIGXfe</li><li>default-values for MIGXdb-filters</li><li>update co_id in iframe-window</li><li>add a searchbox to MIGX-Configurator</li><li>read configs directly from exported configs-files from custom-packages - directory by using configname:packagename - configs</li></ul><p>MIGX 2.4.1</p><p>==============</p><p>some new snippets:</p><ul><li>getDayliMIGXrecord</li><li>migxgetrelations</li></ul><p></p><ul><li>added beta treecombo-filter-option for example to filter resources in MIGXdb by resourcetree</li><li>add window-title configuration, make window-caption dynamic (its possible to use placeholders now)</li><li>hide tabs in form, when only one tab</li><li>added selectposition - renderer</li></ul><p>MIGX 2.4.0</p><p>==============</p><ul><li>new renderer - switchStatusOptions</li><li>new renderer - renderChunk</li><li>getImageList - added ''contains'' and ''snippet'' - where-filters</li><li>add duplicate-contextmenue to MIGXdb </li><li>new property for getImageList: &amp;reverse</li><li>give TVs in each CMP-tab a unique id</li><li>refresh grid after closing iframe-window</li><li>added tpl_n{n} tplFirst tplLast tpl_n tpl_oneresult properties to getImageList</li><li>export jsonarray-fields as separate fields in csv-export</li><li>alias, breadcrumb and ultimateparent for migxREsourceMediaPath</li><li>Added TV - description - field to configuration</li></ul><p></p><p>MIGX 2.3.1</p><p>==============</p><ul><li>some eNotice - error - fixes</li><li>add type - configuration to gridcolumns, now its possible to sort also numeric on the MIGX - grid: see https://github.com/Bruno17/MIGX/issues/41</li></ul><p></p><p>MIGX 2.3.0</p><p>==============</p><ul><li>add multifile - uploader, upload to MIGX - mediasource</li><li>add load from mediasource - button to MIGX</li><li>add migxResourcePath - snippet</li><li>add iframe - support - its now possible to create chunks with snippet-calls and show the result in an iframe-window. used by multifile-uploader.</li></ul><p></p><p>MIGX 2.2.3</p><p>==============</p><ul><li>confirmation before overriding schema-files</li><li>some additions for childresources-management by MIGXdb</li><li>switch between multiple forms - configurations</li><li>add renderDate - renderer , thanks to Jako</li><li>additional send all store-baseParams when opening the form-window. This way we can have different forms depending on filters for example.</li><li>add parent-property for dynamic filter-comboboxes</li><li>add getliste-where for default getlist-processor</li><li>export formtabs as clean json in editraw-mode</li></ul><p></p><p>MIGX 2.2.2</p><p>==============</p><ul><li>add migxLoopCollection-snippet</li><li>move prepareJoins into a migx-method</li><li>confirmation before remove db-record, getcombo did not use idfield </li><li>allow empty prefix </li><li>add possibility to use tables without ''deleted'' - field and default-getlist-processor</li><li>fix Call-time pass-by-reference errors</li><li>get tinyMCE to work on richtext-TV-inputs in MIGXdb - CMPs </li><li>fix prefix not sended to writeSchema</li><li>grid add cls ''main-wrapper'' to give it a bit padding, thanks to jako</li></ul><p></p><p>MIGX 2.2.0</p><p>==============</p><ul><li>export/import configuration-objects as json to/from files in custom-package-directories </li><li>new configs: getlist - defaultsort, joins, gridload_mode (by button, auto) </li><li>grid-smarty-template now can be also in custom-package-directories</li><li>reworked handling of joined objects in default update-php </li><li>add connected_object_id baseparam to migx-grid</li><li>added snippet migxLoopCollection</li></ul><p></p><p>MIGX 2.1.1</p>\n<p>==============</p>\n<ul><li>fix for migx-snippet not working with multiple calls on one page\n      </li><li>resource_id as script-property for getlist-processor when used with migx-snippet</li></ul>\n\n      <p>MIGX 2.1.0</p><p>==============</p><ul><li>&nbsp; add &amp;sort to the getImageList - snippet</li><li>&nbsp; add new snippet ''migx'' to get items from db-tables, can use the same configurations and getList - processors as the MIGXdb - manager</li><li>&nbsp; make it possible to have config-files for grids and processors in another package-folder for easier packaging together custom - packages</li><li>&nbsp; more MIGXdb - configurations</li></ul><p>MIGX 2.0.1</p><p>==============</p><ul><li>more E_NOTICE - Error - fixes</li><li>Fix Missing Add - Item - Replacement - String </li></ul><p></p><p>MIGX 2.0.0</p><p>==============</p><p>- pl</p><ul><li>&nbsp; fix for Revo 2.2.2</li><li>&nbsp; fix some E_NOTICE - errors</li></ul><p></p><p>- new in beta5</p><ul><li>&nbsp; Configure multiple CMP - tabs</li><li>&nbsp; packagemanager ported to extjs - tab</li><li>&nbsp; added MIGX-setup/upgrade - tab</li><li>&nbsp; added configurable text and combo - filterboxes</li></ul><p></p><p>- new in beta3</p><ul><li>&nbsp; This is a preview-version of MIGXdb</li><li>&nbsp; MIGXdb can now also be used as configurable CMP</li><li>&nbsp; MIGX - configurator for tabs, columns, MIGXdb-TV and MIGXdb-CMP</li><li>&nbsp; Package-manager, create and edit schemas and package-tables</li></ul><p></p><p>- new:</p><ul><li>&nbsp; better compatibility with revo 2.2</li></ul><ul><li>&nbsp; working with mediasources</li></ul><ul><li>&nbsp; starting with MIGXdb (very dev)</li></ul>";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2014-12-23T07:29:42+0000";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:7:"Bruno17";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-04-13T06:18:57+0000";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2014-12-23T07:29:42+0000";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:5:"48788";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:21;a:4:{s:4:"name";s:7:"audited";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:25;a:3:{s:4:"name";s:7:"smf_url";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:24:"4d4c3fa6b2b0830da9000001";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=549919e7dc532f2c5906524f";s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:13:"migx-2.9.0-pl";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:5:"mysql";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:9:"breaks_at";s:10:"attributes";a:0:{}s:4:"text";s:8:"10000000";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:70:"http://modx.s3.amazonaws.com/extras/4db018def24554690c000005/migx1.JPG";s:8:"children";a:0:{}}i:34;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:7:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"549919e7dc532f2c5906524f";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:24:"549919e6dc532f2c5906524d";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:8:"filename";s:10:"attributes";a:0:{}s:4:"text";s:27:"migx-2.9.0-pl.transport.zip";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"6503";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:6:"lastip";s:10:"attributes";a:0:{}s:4:"text";s:13:"195.208.4.158";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=549919e7dc532f2c5906524f";s:8:"children";a:0:{}}}}i:35;a:4:{s:4:"name";s:17:"package-signature";s:10:"attributes";a:0:{}s:4:"text";s:13:"migx-2.9.0-pl";s:8:"children";a:0:{}}i:36;a:4:{s:4:"name";s:10:"categories";s:10:"attributes";a:0:{}s:4:"text";s:15:"content,gallery";s:8:"children";a:0:{}}i:37;a:4:{s:4:"name";s:4:"tags";s:10:"attributes";a:0:{}s:4:"text";s:46:"migx,multiitems,multitv,migxdb,CMP,MIGX,MIGXdb";s:8:"children";a:0:{}}}', 2, 9, 0, 'pl', 0);
INSERT INTO `modx_transport_packages` (`signature`, `created`, `updated`, `installed`, `state`, `workspace`, `provider`, `disabled`, `source`, `manifest`, `attributes`, `package_name`, `metadata`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES
('ace-1.5.1-pl', '2015-06-01 09:04:46', '2015-06-01 06:05:02', '2015-06-01 09:05:02', 0, 1, 1, 0, 'ace-1.5.1-pl.transport.zip', NULL, 'a:33:{s:7:"license";s:15218:"GNU GENERAL PUBLIC LICENSE\n   Version 2, June 1991\n--------------------------\n\nCopyright (C) 1989, 1991 Free Software Foundation, Inc.\n59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\nPreamble\n--------\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation''s software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author''s protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors'' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone''s free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n\nGNU GENERAL PUBLIC LICENSE\nTERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n---------------------------------------------------------------\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The "Program", below,\nrefers to any such program or work, and a "work based on the Program"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term "modification".)  Each licensee is addressed as "you".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program''s\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients'' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and "any\nlater version", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\nNO WARRANTY\n-----------\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n---------------------------\nEND OF TERMS AND CONDITIONS";s:6:"readme";s:312:"--------------------\nExtra: Ace\n--------------------\nVersion: 1.5.0\nCreated: March 26th, 2014\nSince: March 29th, 2012\nAuthor: Danil Kostin <danya.postfactum@gmail.com>\nLicense: GNU GPLv2 (or later at your option)\n\nIntegrates Ace Code Editor into MODx Revolution.\n\nPress Ctrl+Alt+H to see all available shortcuts.";s:9:"changelog";s:3054:"Changelog for Ace integration into MODx Revolution.\n\nAce 1.5.1\n====================================\n- Fixed: Bug with narrowing of the textarea.\n\nAce 1.5.0\n====================================\n- Changed: Assets are moved back to /assets/\n- Fixed: MODx tag completions (was completely broken)\n- Added: Editor height setting\n\nAce 1.4.3\n====================================\n- Added: MODx tag completions (Ctrl+Space)\n- Fixed: Issue caused AjaxManager (MODx Manager speed booster plugin) tree drag''n''drop bug\n\nAce 1.4.2\n====================================\n- Added: Undo coalescing\n- Changed: Mac fullscreen command is bound to Command+F12\n- Added: Drag delay (allow to start new selection inside current one) for Mac\n- Fixed: Use file extension of static chunks to detect code syntax\n\n\nAce 1.4.1\n====================================\n- Fixed: Tab handling\n- Fixed: Emmet shortcut listing by Ctr+Alt+H\n- Added: Expandable snippets support (see ace.snippets setting)\n- Added: Emmet wrap_with_abbreviation command (Alt+W)\n\nAce 1.4.0\n====================================\n- Added: Emmet (aka Zen Coding) support\n- Added: Terminal dark theme\n- Added: Hotkey table (Ctrl+Alt+H)\n- Fixed: Resource overview fatal error\n- Changed: Assets are moved to /manager/assets/components/\n\nAce 1.3.3\n====================================\n- Added: PHP live syntax check\n- Added: Chaos dark theme\n- Added: Setting show_invisibles\n\n\nAce 1.3.2\n====================================\n- Fixed: The bug while installing the Ace\n- Fixed: Broken word_wrap setting\n- Added: Tab settings (tab size, soft tab)\n- Added: Now completele compatible with AjaxManager extra\n\n\nAce 1.3.1\n====================================\n- Changed: Plugin content now is stored in static file\n\n\nAce 1.3.0\n====================================\n- Added: German translation\n- Added: MODx tags highlighting\n- Added: Ambiance and xcode themes\n- Added: less/scss syntax highlighting\n- Added: Fullwindow mode (Ctrl + F11)\n- Changed: Editor now ignores `wich_editor` setting. Set `use_editor` to false to use ACE for Resources.\n\n\nAce 1.2.1\n====================================\n- Changed: Assets are moved to manager folder\n- Added: Font size setting\n- Added: "GitHub" theme\n- Added: Support of html5 drag''n''drop (accepting of dropped text)\n- Added: XML / HTML tag autoclosing\n- Fixed: broken en lexicon and php 5.3 incompatibility\n\n\nAce 1.2.0\n====================================\n- Removed: Some unnecessary options\n- Changed: Editor options are moved to system settings\n- Fixed: Multiple little editor bugs\n- Added: Add missing "OnFileEditFormPrerender" event to MODx\n- Added: Multiline editing\n- Added: Advanced find/replace window\n\n\nAce 1.1.0\n====================================\n- Fixed: Fatal error on document create event\n- Fixed: Changing of properties has no effect\n- Added: File edition support\n- Added: MODx tree elements drag''n''drop support\n- Added: Auto-assigning which_element_editor to Ace\n\n\nAce 1.0.0\n====================================\n- Added: Plugin properties to adjust how Ace behaves\n- Initial commit";s:9:"signature";s:12:"ace-1.5.1-pl";s:13:"initialConfig";s:15:"[object Object]";s:4:"text";s:20:"Продолжить";s:2:"id";s:19:"package-install-btn";s:6:"hidden";s:5:"false";s:7:"handler";s:557:"function (va){var g=Ext.getCmp(''modx-package-grid'');if(!g)return false;var r=g.menu.record.data?g.menu.record.data:g.menu.record;var topic=''/workspace/package/install/''+r.signature+''/'';g.loadConsole(Ext.getBody(),topic);va=va||{};Ext.apply(va,{action:''workspace/packages/install'',signature:r.signature,register:''mgr'',topic:topic});MODx.Ajax.request({url:MODx.config.connector_url,params:va,listeners:{''success'':{fn:function(){this.activate();Ext.getCmp(''modx-package-grid'').refresh();},scope:this},''failure'':{fn:function(){this.activate();},scope:this}}});}";s:5:"scope";s:15:"[object Object]";s:8:"minWidth";s:2:"75";s:10:"removeMode";s:9:"container";s:10:"hideParent";s:4:"true";s:6:"events";s:15:"[object Object]";s:7:"ownerCt";s:15:"[object Object]";s:9:"container";s:15:"[object Object]";s:8:"rendered";s:4:"true";s:8:"template";s:15:"[object Object]";s:5:"btnEl";s:15:"[object Object]";s:4:"mons";s:15:"[object Object]";s:2:"el";s:15:"[object Object]";s:4:"icon";s:0:"";s:7:"iconCls";s:0:"";s:8:"boxReady";s:4:"true";s:8:"lastSize";s:15:"[object Object]";s:11:"useSetClass";s:4:"true";s:6:"oldCls";s:12:"x-btn-noicon";s:3:"doc";s:15:"[object Object]";s:19:"monitoringMouseOver";s:4:"true";s:6:"action";s:26:"workspace/packages/install";s:8:"register";s:3:"mgr";s:5:"topic";s:40:"/workspace/package/install/ace-1.5.1-pl/";s:14:"package_action";i:1;}', 'Ace', 'a:38:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"5563ffb4dc532f695101b11a";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"package";s:10:"attributes";a:0:{}s:4:"text";s:24:"4f6e2782f245544fe8000014";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:12:"display_name";s:10:"attributes";a:0:{}s:4:"text";s:12:"ace-1.5.1-pl";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:4:"name";s:10:"attributes";a:0:{}s:4:"text";s:3:"Ace";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:5:"1.5.1";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:13:"version_major";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:13:"version_minor";s:10:"attributes";a:0:{}s:4:"text";s:1:"5";s:8:"children";a:0:{}}i:7;a:4:{s:4:"name";s:13:"version_patch";s:10:"attributes";a:0:{}s:4:"text";s:1:"1";s:8:"children";a:0:{}}i:8;a:4:{s:4:"name";s:7:"release";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:9;a:4:{s:4:"name";s:8:"vrelease";s:10:"attributes";a:0:{}s:4:"text";s:2:"pl";s:8:"children";a:0:{}}i:10;a:3:{s:4:"name";s:14:"vrelease_index";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:11;a:4:{s:4:"name";s:6:"author";s:10:"attributes";a:0:{}s:4:"text";s:9:"bezumkin2";s:8:"children";a:0:{}}i:12;a:4:{s:4:"name";s:11:"description";s:10:"attributes";a:0:{}s:4:"text";s:376:"<p>New feature: modx tag code autocompletion! Press Ctrl+Space to get code suggestions with descriptions.</p><p>Works for snippets, chunks, system settings, tvs and resource fields, filters and properties.</p><p>Property sets, lexicon entries are not supported. Unfortunately, I have no idea how to retrieve chunk-specific placeholders, so there is no placeholder support.</p>";s:8:"children";a:0:{}}i:13;a:4:{s:4:"name";s:12:"instructions";s:10:"attributes";a:0:{}s:4:"text";s:353:"<p></p><p>Install via Package Management.</p><p>Set editor theme you wish in system settings (change namespace to "ace").</p><p>If you want to use this editor for resources, just set system option <i>use_editor</i> to <b>false</b>&nbsp;(global usage), or&nbsp;<i>richtext</i>&nbsp;setting of certain resource to <b>false</b> (specific usage).</p><p></p>";s:8:"children";a:0:{}}i:14;a:4:{s:4:"name";s:9:"changelog";s:10:"attributes";a:0:{}s:4:"text";s:3601:"<p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p>Ace 1.5.1</p><p>====================================</p><p>- Fixed: Bug with narrowing of the textarea.</p><p>Ace 1.5.0</p><p>====================================</p><p>- Changed: Assets are moved back to /assets/</p><p>- Fixed: MODx tag completions (was completely broken)</p><p>- Added: Editor height setting</p><p>Ace 1.4.3</p><p>====================================</p><p>- Added: MODx tag completions (Ctrl+Space)</p><p>- Fixed: Issue caused AjaxManager (MODx Manager speed booster plugin) tree drag''n''drop bug</p><p>Ace 1.4.2</p><p>====================================</p><p>- Added: Undo coalescing</p><p>- Changed: Mac fullscreen command is bound to Command+F12</p><p>- Added: Drag delay (allow to start new selection inside current one) for Mac</p><p>- Fixed: Use file extension of static chunks to detect code syntax</p><p>Ace 1.4.1</p><p>====================================</p><p>- Fixed: Tab handling</p><p>- Fixed: Emmet shortcut listing by Ctr+Alt+H</p><p>- Added: Expandable snippets support (see ace.snippets setting)</p><p>- Added: Emmet wrap_with_abbreviation command (Alt+W)</p><p></p><p>Ace 1.4.0</p><p>====================================</p><p>- Added: Emmet (aka Zen Coding) support</p><p>- Added: Terminal dark theme</p><p>- Added: Hotkey table (Ctrl+Alt+H)</p><p>- Fixed: Resource overview fatal error</p><p>- Changed: Assets are moved to /manager/assets/components/</p><p></p><p>Ace 1.3.3</p><p>====================================</p><p>- Added: PHP live syntax check</p><p>- Added: Chaos dark theme</p><p>- Added: Setting show_invisibles</p><p></p><p>Ace 1.3.2</p><p>====================================</p><p>- Fixed: The bug while installing the Ace</p><p>- Fixed: Broken word_wrap setting</p><p>- Added: Tab settings (tab size, soft tab)</p><p>- Added: Now completele compatible with AjaxManager extra</p><p>Ace 1.3.1</p><p>====================================</p><p>- Changed: Plugin content now is stored in static file</p><p></p><p>Ace 1.3.0</p><p>====================================</p><p>- Added: German translation</p><p>- Added: MODx tags highlighting</p><p>- Added: Ambiance and xcode themes</p><p>- Added: less/scss syntax highlighting</p><p>- Added: Fullwindow mode (Ctrl + F11)</p><p>- Changed: Editor now ignores `wich_editor` setting. Set `use_editor` to false to use ACE for Resources.</p><p></p><p>Ace 1.2.1</p><p>====================================</p><p>- Changed: Assets are moved to manager folder</p><p>- Added: Font size setting</p><p>- Added: "GitHub" theme</p><p>- Added: Support of html5 drag''n''drop (accepting of dropped text)</p><p>- Added: XML / HTML tag autoclosing</p><p>- Fixed: broken en lexicon and php 5.3 incompatibility</p><p></p><p>Ace 1.2.0</p><p>====================================</p><p>- Removed: Some unnecessary options</p><p>- Changed: Editor options are moved to system settings</p><p>- Fixed: Multiple little editor bugs</p><p>- Added: Add missing "OnFileEditFormPrerender" event to MODx</p><p>- Added: Multiline editing</p><p>- Added: Advanced find/replace window</p><p></p><p></p><p>Ace 1.1.0</p><p>====================================</p><p>- Fixed: Fatal error on document create event</p><p>- Fixed: Changing of properties has no effect</p><p>- Added: File edition support</p><p>- Added: MODx tree elements drag''n''drop support</p><p>- Added: Auto-assigning which_element_editor to Ace</p><p></p><p></p><p>Ace 1.0.0</p><p>====================================</p><p>- Added: Plugin properties to adjust how Ace behaves</p><p>- Initial commit</p><p></p><p></p>";s:8:"children";a:0:{}}i:15;a:4:{s:4:"name";s:9:"createdon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-05-26T05:08:04+0000";s:8:"children";a:0:{}}i:16;a:4:{s:4:"name";s:9:"createdby";s:10:"attributes";a:0:{}s:4:"text";s:9:"bezumkin2";s:8:"children";a:0:{}}i:17;a:4:{s:4:"name";s:8:"editedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-06-01T05:57:42+0000";s:8:"children";a:0:{}}i:18;a:4:{s:4:"name";s:10:"releasedon";s:10:"attributes";a:0:{}s:4:"text";s:24:"2015-05-26T05:08:04+0000";s:8:"children";a:0:{}}i:19;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:5:"65135";s:8:"children";a:0:{}}i:20;a:4:{s:4:"name";s:8:"approved";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:21;a:4:{s:4:"name";s:7:"audited";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:22;a:4:{s:4:"name";s:8:"featured";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:23;a:4:{s:4:"name";s:10:"deprecated";s:10:"attributes";a:0:{}s:4:"text";s:5:"false";s:8:"children";a:0:{}}i:24;a:4:{s:4:"name";s:7:"license";s:10:"attributes";a:0:{}s:4:"text";s:5:"GPLv2";s:8:"children";a:0:{}}i:25;a:3:{s:4:"name";s:7:"smf_url";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}i:26;a:4:{s:4:"name";s:10:"repository";s:10:"attributes";a:0:{}s:4:"text";s:24:"4d4c3fa6b2b0830da9000001";s:8:"children";a:0:{}}i:27;a:4:{s:4:"name";s:8:"supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:28;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=5564007ddc532f695101b147";s:8:"children";a:0:{}}i:29;a:4:{s:4:"name";s:9:"signature";s:10:"attributes";a:0:{}s:4:"text";s:12:"ace-1.5.1-pl";s:8:"children";a:0:{}}i:30;a:4:{s:4:"name";s:11:"supports_db";s:10:"attributes";a:0:{}s:4:"text";s:12:"mysql,sqlsrv";s:8:"children";a:0:{}}i:31;a:4:{s:4:"name";s:16:"minimum_supports";s:10:"attributes";a:0:{}s:4:"text";s:3:"2.2";s:8:"children";a:0:{}}i:32;a:4:{s:4:"name";s:9:"breaks_at";s:10:"attributes";a:0:{}s:4:"text";s:8:"10000000";s:8:"children";a:0:{}}i:33;a:4:{s:4:"name";s:10:"screenshot";s:10:"attributes";a:0:{}s:4:"text";s:68:"http://modx.s3.amazonaws.com/extras/4f6e2782f245544fe8000014/ace.png";s:8:"children";a:0:{}}i:34;a:3:{s:4:"name";s:4:"file";s:10:"attributes";a:0:{}s:8:"children";a:7:{i:0;a:4:{s:4:"name";s:2:"id";s:10:"attributes";a:0:{}s:4:"text";s:24:"5564007ddc532f695101b147";s:8:"children";a:0:{}}i:1;a:4:{s:4:"name";s:7:"version";s:10:"attributes";a:0:{}s:4:"text";s:24:"5563ffb4dc532f695101b11a";s:8:"children";a:0:{}}i:2;a:4:{s:4:"name";s:8:"filename";s:10:"attributes";a:0:{}s:4:"text";s:26:"ace-1.5.1-pl.transport.zip";s:8:"children";a:0:{}}i:3;a:4:{s:4:"name";s:9:"downloads";s:10:"attributes";a:0:{}s:4:"text";s:4:"1560";s:8:"children";a:0:{}}i:4;a:4:{s:4:"name";s:6:"lastip";s:10:"attributes";a:0:{}s:4:"text";s:13:"31.170.164.25";s:8:"children";a:0:{}}i:5;a:4:{s:4:"name";s:9:"transport";s:10:"attributes";a:0:{}s:4:"text";s:4:"true";s:8:"children";a:0:{}}i:6;a:4:{s:4:"name";s:8:"location";s:10:"attributes";a:0:{}s:4:"text";s:60:"http://modx.com/extras/download/?id=5564007ddc532f695101b147";s:8:"children";a:0:{}}}}i:35;a:4:{s:4:"name";s:17:"package-signature";s:10:"attributes";a:0:{}s:4:"text";s:12:"ace-1.5.1-pl";s:8:"children";a:0:{}}i:36;a:4:{s:4:"name";s:10:"categories";s:10:"attributes";a:0:{}s:4:"text";s:15:"richtexteditors";s:8:"children";a:0:{}}i:37;a:3:{s:4:"name";s:4:"tags";s:10:"attributes";a:0:{}s:8:"children";a:0:{}}}', 1, 5, 1, 'pl', 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_transport_providers`
--

CREATE TABLE IF NOT EXISTS `modx_transport_providers` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL,
  `description` mediumtext,
  `service_url` tinytext,
  `username` varchar(255) NOT NULL DEFAULT '',
  `api_key` varchar(255) NOT NULL DEFAULT '',
  `created` datetime NOT NULL,
  `updated` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;

--
-- Dumping data for table `modx_transport_providers`
--

INSERT INTO `modx_transport_providers` (`id`, `name`, `description`, `service_url`, `username`, `api_key`, `created`, `updated`) VALUES
(1, 'modx.com', 'The official MODX transport facility for 3rd party components.', 'http://rest.modx.com/extras/', '', '', '2015-01-29 14:12:19', NULL),
(2, 'modstore', '', 'http://modstore.pro/extras/', '', '', '2015-03-24 15:51:15', NULL);

-- --------------------------------------------------------

--
-- Table structure for table `modx_users`
--

CREATE TABLE IF NOT EXISTS `modx_users` (
`id` int(10) unsigned NOT NULL,
  `username` varchar(100) NOT NULL DEFAULT '',
  `password` varchar(100) NOT NULL DEFAULT '',
  `cachepwd` varchar(100) NOT NULL DEFAULT '',
  `class_key` varchar(100) NOT NULL DEFAULT 'modUser',
  `active` tinyint(1) unsigned NOT NULL DEFAULT '1',
  `remote_key` varchar(255) DEFAULT NULL,
  `remote_data` text,
  `hash_class` varchar(100) NOT NULL DEFAULT 'hashing.modPBKDF2',
  `salt` varchar(100) NOT NULL DEFAULT '',
  `primary_group` int(10) unsigned NOT NULL DEFAULT '0',
  `session_stale` text,
  `sudo` tinyint(1) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

--
-- Dumping data for table `modx_users`
--

INSERT INTO `modx_users` (`id`, `username`, `password`, `cachepwd`, `class_key`, `active`, `remote_key`, `remote_data`, `hash_class`, `salt`, `primary_group`, `session_stale`, `sudo`) VALUES
(1, 'admin', 'jhHqT8XjndCewOVwGVKRMdedtdsxs7YQ66Z3Folg25Pw30uCJ/Znm6/UU+b/w42CeA==', 'OwmOjIz7CwZOfWijzBVSgqPZ32WKvIrkVIXWkmOgcoZ1YdCfRDw=', 'modUser', 1, NULL, NULL, 'hashing.modPBKDF2', 'b0bf530923fdb50cf6654952fa892477', 1, NULL, 1);

-- --------------------------------------------------------

--
-- Table structure for table `modx_user_attributes`
--

CREATE TABLE IF NOT EXISTS `modx_user_attributes` (
`id` int(10) unsigned NOT NULL,
  `internalKey` int(10) NOT NULL,
  `fullname` varchar(100) NOT NULL DEFAULT '',
  `email` varchar(100) NOT NULL DEFAULT '',
  `phone` varchar(100) NOT NULL DEFAULT '',
  `mobilephone` varchar(100) NOT NULL DEFAULT '',
  `blocked` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `blockeduntil` int(11) NOT NULL DEFAULT '0',
  `blockedafter` int(11) NOT NULL DEFAULT '0',
  `logincount` int(11) NOT NULL DEFAULT '0',
  `lastlogin` int(11) NOT NULL DEFAULT '0',
  `thislogin` int(11) NOT NULL DEFAULT '0',
  `failedlogincount` int(10) NOT NULL DEFAULT '0',
  `sessionid` varchar(100) NOT NULL DEFAULT '',
  `dob` int(10) NOT NULL DEFAULT '0',
  `gender` int(1) NOT NULL DEFAULT '0',
  `address` text NOT NULL,
  `country` varchar(255) NOT NULL DEFAULT '',
  `city` varchar(255) NOT NULL DEFAULT '',
  `state` varchar(25) NOT NULL DEFAULT '',
  `zip` varchar(25) NOT NULL DEFAULT '',
  `fax` varchar(100) NOT NULL DEFAULT '',
  `photo` varchar(255) NOT NULL DEFAULT '',
  `comment` text NOT NULL,
  `website` varchar(255) NOT NULL DEFAULT '',
  `extended` text
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

--
-- Dumping data for table `modx_user_attributes`
--

INSERT INTO `modx_user_attributes` (`id`, `internalKey`, `fullname`, `email`, `phone`, `mobilephone`, `blocked`, `blockeduntil`, `blockedafter`, `logincount`, `lastlogin`, `thislogin`, `failedlogincount`, `sessionid`, `dob`, `gender`, `address`, `country`, `city`, `state`, `zip`, `fax`, `photo`, `comment`, `website`, `extended`) VALUES
(1, 1, 'Разработчик сайта Complex Systems', 'info@complexsys.ru', '', '', 0, 0, 0, 20, 1432891418, 1433137365, 0, 'uqbken5pck3ch1dhjumfvd4rj4', 0, 0, '', '', '', '', '', '', '', '', '', NULL);

-- --------------------------------------------------------

--
-- Table structure for table `modx_user_group_roles`
--

CREATE TABLE IF NOT EXISTS `modx_user_group_roles` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL,
  `description` mediumtext,
  `authority` int(10) unsigned NOT NULL DEFAULT '9999'
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;

--
-- Dumping data for table `modx_user_group_roles`
--

INSERT INTO `modx_user_group_roles` (`id`, `name`, `description`, `authority`) VALUES
(1, 'Member', NULL, 9999),
(2, 'Super User', NULL, 0);

-- --------------------------------------------------------

--
-- Table structure for table `modx_user_group_settings`
--

CREATE TABLE IF NOT EXISTS `modx_user_group_settings` (
  `group` int(10) unsigned NOT NULL DEFAULT '0',
  `key` varchar(50) NOT NULL,
  `value` text,
  `xtype` varchar(75) NOT NULL DEFAULT 'textfield',
  `namespace` varchar(40) NOT NULL DEFAULT 'core',
  `area` varchar(255) NOT NULL DEFAULT '',
  `editedon` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Table structure for table `modx_user_messages`
--

CREATE TABLE IF NOT EXISTS `modx_user_messages` (
`id` int(10) unsigned NOT NULL,
  `type` varchar(15) NOT NULL DEFAULT '',
  `subject` varchar(255) NOT NULL DEFAULT '',
  `message` text NOT NULL,
  `sender` int(10) NOT NULL DEFAULT '0',
  `recipient` int(10) NOT NULL DEFAULT '0',
  `private` tinyint(4) NOT NULL DEFAULT '0',
  `date_sent` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `read` tinyint(1) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Table structure for table `modx_user_settings`
--

CREATE TABLE IF NOT EXISTS `modx_user_settings` (
  `user` int(11) NOT NULL DEFAULT '0',
  `key` varchar(50) NOT NULL DEFAULT '',
  `value` text,
  `xtype` varchar(75) NOT NULL DEFAULT 'textfield',
  `namespace` varchar(40) NOT NULL DEFAULT 'core',
  `area` varchar(255) NOT NULL DEFAULT '',
  `editedon` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Table structure for table `modx_workspaces`
--

CREATE TABLE IF NOT EXISTS `modx_workspaces` (
`id` int(10) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `path` varchar(255) NOT NULL DEFAULT '',
  `created` datetime NOT NULL,
  `active` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `attributes` mediumtext
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

--
-- Dumping data for table `modx_workspaces`
--

INSERT INTO `modx_workspaces` (`id`, `name`, `path`, `created`, `active`, `attributes`) VALUES
(1, 'Default MODX workspace', '{core_path}', '2015-03-24 15:46:22', 1, NULL);

--
-- Indexes for dumped tables
--

--
-- Indexes for table `modx_access_actiondom`
--
ALTER TABLE `modx_access_actiondom`
 ADD PRIMARY KEY (`id`), ADD KEY `target` (`target`), ADD KEY `principal_class` (`principal_class`), ADD KEY `principal` (`principal`), ADD KEY `authority` (`authority`), ADD KEY `policy` (`policy`);

--
-- Indexes for table `modx_access_actions`
--
ALTER TABLE `modx_access_actions`
 ADD PRIMARY KEY (`id`), ADD KEY `target` (`target`), ADD KEY `principal_class` (`principal_class`), ADD KEY `principal` (`principal`), ADD KEY `authority` (`authority`), ADD KEY `policy` (`policy`);

--
-- Indexes for table `modx_access_category`
--
ALTER TABLE `modx_access_category`
 ADD PRIMARY KEY (`id`), ADD KEY `target` (`target`), ADD KEY `principal_class` (`principal_class`), ADD KEY `principal` (`principal`), ADD KEY `authority` (`authority`), ADD KEY `policy` (`policy`), ADD KEY `context_key` (`context_key`);

--
-- Indexes for table `modx_access_context`
--
ALTER TABLE `modx_access_context`
 ADD PRIMARY KEY (`id`), ADD KEY `target` (`target`), ADD KEY `principal_class` (`principal_class`), ADD KEY `principal` (`principal`), ADD KEY `authority` (`authority`), ADD KEY `policy` (`policy`);

--
-- Indexes for table `modx_access_elements`
--
ALTER TABLE `modx_access_elements`
 ADD PRIMARY KEY (`id`), ADD KEY `target` (`target`), ADD KEY `principal_class` (`principal_class`), ADD KEY `principal` (`principal`), ADD KEY `authority` (`authority`), ADD KEY `policy` (`policy`), ADD KEY `context_key` (`context_key`);

--
-- Indexes for table `modx_access_media_source`
--
ALTER TABLE `modx_access_media_source`
 ADD PRIMARY KEY (`id`), ADD KEY `target` (`target`), ADD KEY `principal_class` (`principal_class`), ADD KEY `principal` (`principal`), ADD KEY `authority` (`authority`), ADD KEY `policy` (`policy`), ADD KEY `context_key` (`context_key`);

--
-- Indexes for table `modx_access_menus`
--
ALTER TABLE `modx_access_menus`
 ADD PRIMARY KEY (`id`), ADD KEY `target` (`target`), ADD KEY `principal_class` (`principal_class`), ADD KEY `principal` (`principal`), ADD KEY `authority` (`authority`), ADD KEY `policy` (`policy`);

--
-- Indexes for table `modx_access_permissions`
--
ALTER TABLE `modx_access_permissions`
 ADD PRIMARY KEY (`id`), ADD KEY `template` (`template`), ADD KEY `name` (`name`);

--
-- Indexes for table `modx_access_policies`
--
ALTER TABLE `modx_access_policies`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`), ADD KEY `parent` (`parent`), ADD KEY `class` (`class`), ADD KEY `template` (`template`);

--
-- Indexes for table `modx_access_policy_templates`
--
ALTER TABLE `modx_access_policy_templates`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_access_policy_template_groups`
--
ALTER TABLE `modx_access_policy_template_groups`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_access_resources`
--
ALTER TABLE `modx_access_resources`
 ADD PRIMARY KEY (`id`), ADD KEY `target` (`target`), ADD KEY `principal_class` (`principal_class`), ADD KEY `principal` (`principal`), ADD KEY `authority` (`authority`), ADD KEY `policy` (`policy`), ADD KEY `context_key` (`context_key`);

--
-- Indexes for table `modx_access_resource_groups`
--
ALTER TABLE `modx_access_resource_groups`
 ADD PRIMARY KEY (`id`), ADD KEY `target` (`target`), ADD KEY `principal_class` (`principal_class`), ADD KEY `principal` (`principal`), ADD KEY `authority` (`authority`), ADD KEY `policy` (`policy`), ADD KEY `context_key` (`context_key`);

--
-- Indexes for table `modx_access_templatevars`
--
ALTER TABLE `modx_access_templatevars`
 ADD PRIMARY KEY (`id`), ADD KEY `target` (`target`), ADD KEY `principal_class` (`principal_class`), ADD KEY `principal` (`principal`), ADD KEY `authority` (`authority`), ADD KEY `policy` (`policy`), ADD KEY `context_key` (`context_key`);

--
-- Indexes for table `modx_actiondom`
--
ALTER TABLE `modx_actiondom`
 ADD PRIMARY KEY (`id`), ADD KEY `set` (`set`), ADD KEY `action` (`action`), ADD KEY `name` (`name`), ADD KEY `active` (`active`), ADD KEY `for_parent` (`for_parent`), ADD KEY `rank` (`rank`);

--
-- Indexes for table `modx_actions`
--
ALTER TABLE `modx_actions`
 ADD PRIMARY KEY (`id`), ADD KEY `namespace` (`namespace`), ADD KEY `controller` (`controller`);

--
-- Indexes for table `modx_actions_fields`
--
ALTER TABLE `modx_actions_fields`
 ADD PRIMARY KEY (`id`), ADD KEY `action` (`action`), ADD KEY `type` (`type`), ADD KEY `tab` (`tab`);

--
-- Indexes for table `modx_active_users`
--
ALTER TABLE `modx_active_users`
 ADD PRIMARY KEY (`internalKey`);

--
-- Indexes for table `modx_categories`
--
ALTER TABLE `modx_categories`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `category` (`parent`,`category`), ADD KEY `parent` (`parent`);

--
-- Indexes for table `modx_categories_closure`
--
ALTER TABLE `modx_categories_closure`
 ADD PRIMARY KEY (`ancestor`,`descendant`);

--
-- Indexes for table `modx_class_map`
--
ALTER TABLE `modx_class_map`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `class` (`class`), ADD KEY `parent_class` (`parent_class`), ADD KEY `name_field` (`name_field`);

--
-- Indexes for table `modx_clientconfig_group`
--
ALTER TABLE `modx_clientconfig_group`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_clientconfig_setting`
--
ALTER TABLE `modx_clientconfig_setting`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_collection_resource_template`
--
ALTER TABLE `modx_collection_resource_template`
 ADD PRIMARY KEY (`collection_template`,`resource_template`);

--
-- Indexes for table `modx_collection_selections`
--
ALTER TABLE `modx_collection_selections`
 ADD PRIMARY KEY (`collection`,`resource`);

--
-- Indexes for table `modx_collection_settings`
--
ALTER TABLE `modx_collection_settings`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `collection` (`collection`);

--
-- Indexes for table `modx_collection_templates`
--
ALTER TABLE `modx_collection_templates`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`);

--
-- Indexes for table `modx_collection_template_columns`
--
ALTER TABLE `modx_collection_template_columns`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_content_type`
--
ALTER TABLE `modx_content_type`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`);

--
-- Indexes for table `modx_context`
--
ALTER TABLE `modx_context`
 ADD PRIMARY KEY (`key`), ADD KEY `name` (`name`), ADD KEY `rank` (`rank`);

--
-- Indexes for table `modx_context_resource`
--
ALTER TABLE `modx_context_resource`
 ADD PRIMARY KEY (`context_key`,`resource`);

--
-- Indexes for table `modx_context_setting`
--
ALTER TABLE `modx_context_setting`
 ADD PRIMARY KEY (`context_key`,`key`);

--
-- Indexes for table `modx_dashboard`
--
ALTER TABLE `modx_dashboard`
 ADD PRIMARY KEY (`id`), ADD KEY `name` (`name`), ADD KEY `hide_trees` (`hide_trees`);

--
-- Indexes for table `modx_dashboard_widget`
--
ALTER TABLE `modx_dashboard_widget`
 ADD PRIMARY KEY (`id`), ADD KEY `name` (`name`), ADD KEY `type` (`type`), ADD KEY `namespace` (`namespace`), ADD KEY `lexicon` (`lexicon`);

--
-- Indexes for table `modx_dashboard_widget_placement`
--
ALTER TABLE `modx_dashboard_widget_placement`
 ADD PRIMARY KEY (`dashboard`,`widget`), ADD KEY `rank` (`rank`);

--
-- Indexes for table `modx_documentgroup_names`
--
ALTER TABLE `modx_documentgroup_names`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`);

--
-- Indexes for table `modx_document_groups`
--
ALTER TABLE `modx_document_groups`
 ADD PRIMARY KEY (`id`), ADD KEY `document_group` (`document_group`), ADD KEY `document` (`document`);

--
-- Indexes for table `modx_element_property_sets`
--
ALTER TABLE `modx_element_property_sets`
 ADD PRIMARY KEY (`element`,`element_class`,`property_set`);

--
-- Indexes for table `modx_extension_packages`
--
ALTER TABLE `modx_extension_packages`
 ADD PRIMARY KEY (`id`), ADD KEY `namespace` (`namespace`), ADD KEY `name` (`name`);

--
-- Indexes for table `modx_fc_profiles`
--
ALTER TABLE `modx_fc_profiles`
 ADD PRIMARY KEY (`id`), ADD KEY `name` (`name`), ADD KEY `rank` (`rank`), ADD KEY `active` (`active`);

--
-- Indexes for table `modx_fc_profiles_usergroups`
--
ALTER TABLE `modx_fc_profiles_usergroups`
 ADD PRIMARY KEY (`usergroup`,`profile`);

--
-- Indexes for table `modx_fc_sets`
--
ALTER TABLE `modx_fc_sets`
 ADD PRIMARY KEY (`id`), ADD KEY `profile` (`profile`), ADD KEY `action` (`action`), ADD KEY `active` (`active`), ADD KEY `template` (`template`);

--
-- Indexes for table `modx_files`
--
ALTER TABLE `modx_files`
 ADD PRIMARY KEY (`id`), ADD KEY `name` (`name`), ADD KEY `docid` (`docid`), ADD KEY `uid` (`uid`);

--
-- Indexes for table `modx_formit_forms`
--
ALTER TABLE `modx_formit_forms`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_lexicon_entries`
--
ALTER TABLE `modx_lexicon_entries`
 ADD PRIMARY KEY (`id`), ADD KEY `name` (`name`), ADD KEY `topic` (`topic`), ADD KEY `namespace` (`namespace`), ADD KEY `language` (`language`);

--
-- Indexes for table `modx_manager_log`
--
ALTER TABLE `modx_manager_log`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_media_sources`
--
ALTER TABLE `modx_media_sources`
 ADD PRIMARY KEY (`id`), ADD KEY `name` (`name`), ADD KEY `class_key` (`class_key`), ADD KEY `is_stream` (`is_stream`);

--
-- Indexes for table `modx_media_sources_contexts`
--
ALTER TABLE `modx_media_sources_contexts`
 ADD PRIMARY KEY (`source`,`context_key`);

--
-- Indexes for table `modx_media_sources_elements`
--
ALTER TABLE `modx_media_sources_elements`
 ADD PRIMARY KEY (`source`,`object`,`object_class`,`context_key`);

--
-- Indexes for table `modx_membergroup_names`
--
ALTER TABLE `modx_membergroup_names`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`), ADD KEY `parent` (`parent`), ADD KEY `rank` (`rank`), ADD KEY `dashboard` (`dashboard`);

--
-- Indexes for table `modx_member_groups`
--
ALTER TABLE `modx_member_groups`
 ADD PRIMARY KEY (`id`), ADD KEY `role` (`role`), ADD KEY `rank` (`rank`);

--
-- Indexes for table `modx_menus`
--
ALTER TABLE `modx_menus`
 ADD PRIMARY KEY (`text`), ADD KEY `parent` (`parent`), ADD KEY `action` (`action`), ADD KEY `namespace` (`namespace`);

--
-- Indexes for table `modx_migx_configs`
--
ALTER TABLE `modx_migx_configs`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_migx_config_elements`
--
ALTER TABLE `modx_migx_config_elements`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_migx_elements`
--
ALTER TABLE `modx_migx_elements`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_migx_formtabs`
--
ALTER TABLE `modx_migx_formtabs`
 ADD PRIMARY KEY (`id`), ADD KEY `config_id` (`config_id`);

--
-- Indexes for table `modx_migx_formtab_fields`
--
ALTER TABLE `modx_migx_formtab_fields`
 ADD PRIMARY KEY (`id`), ADD KEY `config_id` (`config_id`), ADD KEY `formtab_id` (`formtab_id`), ADD KEY `field` (`field`), ADD KEY `pos` (`pos`);

--
-- Indexes for table `modx_namespaces`
--
ALTER TABLE `modx_namespaces`
 ADD PRIMARY KEY (`name`);

--
-- Indexes for table `modx_property_set`
--
ALTER TABLE `modx_property_set`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`), ADD KEY `category` (`category`);

--
-- Indexes for table `modx_register_messages`
--
ALTER TABLE `modx_register_messages`
 ADD PRIMARY KEY (`topic`,`id`), ADD KEY `created` (`created`), ADD KEY `valid` (`valid`), ADD KEY `accessed` (`accessed`), ADD KEY `accesses` (`accesses`), ADD KEY `expires` (`expires`);

--
-- Indexes for table `modx_register_queues`
--
ALTER TABLE `modx_register_queues`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`);

--
-- Indexes for table `modx_register_topics`
--
ALTER TABLE `modx_register_topics`
 ADD PRIMARY KEY (`id`), ADD KEY `queue` (`queue`), ADD KEY `name` (`name`);

--
-- Indexes for table `modx_session`
--
ALTER TABLE `modx_session`
 ADD PRIMARY KEY (`id`), ADD KEY `access` (`access`);

--
-- Indexes for table `modx_site_content`
--
ALTER TABLE `modx_site_content`
 ADD PRIMARY KEY (`id`), ADD KEY `alias` (`alias`), ADD KEY `published` (`published`), ADD KEY `pub_date` (`pub_date`), ADD KEY `unpub_date` (`unpub_date`), ADD KEY `parent` (`parent`), ADD KEY `isfolder` (`isfolder`), ADD KEY `template` (`template`), ADD KEY `menuindex` (`menuindex`), ADD KEY `searchable` (`searchable`), ADD KEY `cacheable` (`cacheable`), ADD KEY `hidemenu` (`hidemenu`), ADD KEY `class_key` (`class_key`), ADD KEY `context_key` (`context_key`), ADD KEY `uri` (`uri`(333)), ADD KEY `uri_override` (`uri_override`), ADD KEY `hide_children_in_tree` (`hide_children_in_tree`), ADD KEY `show_in_tree` (`show_in_tree`), ADD KEY `cache_refresh_idx` (`parent`,`menuindex`,`id`), ADD FULLTEXT KEY `content_ft_idx` (`pagetitle`,`longtitle`,`description`,`introtext`,`content`);

--
-- Indexes for table `modx_site_htmlsnippets`
--
ALTER TABLE `modx_site_htmlsnippets`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`), ADD KEY `category` (`category`), ADD KEY `locked` (`locked`), ADD KEY `static` (`static`);

--
-- Indexes for table `modx_site_plugins`
--
ALTER TABLE `modx_site_plugins`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`), ADD KEY `category` (`category`), ADD KEY `locked` (`locked`), ADD KEY `disabled` (`disabled`), ADD KEY `static` (`static`);

--
-- Indexes for table `modx_site_plugin_events`
--
ALTER TABLE `modx_site_plugin_events`
 ADD PRIMARY KEY (`pluginid`,`event`), ADD KEY `priority` (`priority`);

--
-- Indexes for table `modx_site_snippets`
--
ALTER TABLE `modx_site_snippets`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`), ADD KEY `category` (`category`), ADD KEY `locked` (`locked`), ADD KEY `moduleguid` (`moduleguid`), ADD KEY `static` (`static`);

--
-- Indexes for table `modx_site_templates`
--
ALTER TABLE `modx_site_templates`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `templatename` (`templatename`), ADD KEY `category` (`category`), ADD KEY `locked` (`locked`), ADD KEY `static` (`static`);

--
-- Indexes for table `modx_site_tmplvars`
--
ALTER TABLE `modx_site_tmplvars`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`), ADD KEY `category` (`category`), ADD KEY `locked` (`locked`), ADD KEY `rank` (`rank`), ADD KEY `static` (`static`);

--
-- Indexes for table `modx_site_tmplvar_access`
--
ALTER TABLE `modx_site_tmplvar_access`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_site_tmplvar_contentvalues`
--
ALTER TABLE `modx_site_tmplvar_contentvalues`
 ADD PRIMARY KEY (`id`), ADD KEY `tmplvarid` (`tmplvarid`), ADD KEY `contentid` (`contentid`), ADD KEY `tv_cnt` (`tmplvarid`,`contentid`);

--
-- Indexes for table `modx_site_tmplvar_templates`
--
ALTER TABLE `modx_site_tmplvar_templates`
 ADD PRIMARY KEY (`tmplvarid`,`templateid`);

--
-- Indexes for table `modx_system_eventnames`
--
ALTER TABLE `modx_system_eventnames`
 ADD PRIMARY KEY (`name`);

--
-- Indexes for table `modx_system_settings`
--
ALTER TABLE `modx_system_settings`
 ADD PRIMARY KEY (`key`);

--
-- Indexes for table `modx_transport_packages`
--
ALTER TABLE `modx_transport_packages`
 ADD PRIMARY KEY (`signature`), ADD KEY `workspace` (`workspace`), ADD KEY `provider` (`provider`), ADD KEY `disabled` (`disabled`), ADD KEY `package_name` (`package_name`), ADD KEY `version_major` (`version_major`), ADD KEY `version_minor` (`version_minor`), ADD KEY `version_patch` (`version_patch`), ADD KEY `release` (`release`), ADD KEY `release_index` (`release_index`);

--
-- Indexes for table `modx_transport_providers`
--
ALTER TABLE `modx_transport_providers`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`), ADD KEY `api_key` (`api_key`), ADD KEY `username` (`username`);

--
-- Indexes for table `modx_users`
--
ALTER TABLE `modx_users`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `username` (`username`), ADD KEY `class_key` (`class_key`), ADD KEY `remote_key` (`remote_key`), ADD KEY `primary_group` (`primary_group`);

--
-- Indexes for table `modx_user_attributes`
--
ALTER TABLE `modx_user_attributes`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `internalKey` (`internalKey`);

--
-- Indexes for table `modx_user_group_roles`
--
ALTER TABLE `modx_user_group_roles`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`), ADD KEY `authority` (`authority`);

--
-- Indexes for table `modx_user_group_settings`
--
ALTER TABLE `modx_user_group_settings`
 ADD PRIMARY KEY (`group`,`key`);

--
-- Indexes for table `modx_user_messages`
--
ALTER TABLE `modx_user_messages`
 ADD PRIMARY KEY (`id`);

--
-- Indexes for table `modx_user_settings`
--
ALTER TABLE `modx_user_settings`
 ADD PRIMARY KEY (`user`,`key`);

--
-- Indexes for table `modx_workspaces`
--
ALTER TABLE `modx_workspaces`
 ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `path` (`path`), ADD KEY `name` (`name`), ADD KEY `active` (`active`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `modx_access_actiondom`
--
ALTER TABLE `modx_access_actiondom`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_access_actions`
--
ALTER TABLE `modx_access_actions`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_access_category`
--
ALTER TABLE `modx_access_category`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_access_context`
--
ALTER TABLE `modx_access_context`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=5;
--
-- AUTO_INCREMENT for table `modx_access_elements`
--
ALTER TABLE `modx_access_elements`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_access_media_source`
--
ALTER TABLE `modx_access_media_source`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_access_menus`
--
ALTER TABLE `modx_access_menus`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_access_permissions`
--
ALTER TABLE `modx_access_permissions`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=218;
--
-- AUTO_INCREMENT for table `modx_access_policies`
--
ALTER TABLE `modx_access_policies`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=13;
--
-- AUTO_INCREMENT for table `modx_access_policy_templates`
--
ALTER TABLE `modx_access_policy_templates`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=8;
--
-- AUTO_INCREMENT for table `modx_access_policy_template_groups`
--
ALTER TABLE `modx_access_policy_template_groups`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=6;
--
-- AUTO_INCREMENT for table `modx_access_resources`
--
ALTER TABLE `modx_access_resources`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_access_resource_groups`
--
ALTER TABLE `modx_access_resource_groups`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_access_templatevars`
--
ALTER TABLE `modx_access_templatevars`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_actiondom`
--
ALTER TABLE `modx_actiondom`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_actions`
--
ALTER TABLE `modx_actions`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=6;
--
-- AUTO_INCREMENT for table `modx_actions_fields`
--
ALTER TABLE `modx_actions_fields`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=77;
--
-- AUTO_INCREMENT for table `modx_categories`
--
ALTER TABLE `modx_categories`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=19;
--
-- AUTO_INCREMENT for table `modx_class_map`
--
ALTER TABLE `modx_class_map`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=10;
--
-- AUTO_INCREMENT for table `modx_clientconfig_group`
--
ALTER TABLE `modx_clientconfig_group`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=4;
--
-- AUTO_INCREMENT for table `modx_clientconfig_setting`
--
ALTER TABLE `modx_clientconfig_setting`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=21;
--
-- AUTO_INCREMENT for table `modx_collection_settings`
--
ALTER TABLE `modx_collection_settings`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=6;
--
-- AUTO_INCREMENT for table `modx_collection_templates`
--
ALTER TABLE `modx_collection_templates`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=5;
--
-- AUTO_INCREMENT for table `modx_collection_template_columns`
--
ALTER TABLE `modx_collection_template_columns`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=21;
--
-- AUTO_INCREMENT for table `modx_content_type`
--
ALTER TABLE `modx_content_type`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=9;
--
-- AUTO_INCREMENT for table `modx_dashboard`
--
ALTER TABLE `modx_dashboard`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=2;
--
-- AUTO_INCREMENT for table `modx_dashboard_widget`
--
ALTER TABLE `modx_dashboard_widget`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=6;
--
-- AUTO_INCREMENT for table `modx_documentgroup_names`
--
ALTER TABLE `modx_documentgroup_names`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_document_groups`
--
ALTER TABLE `modx_document_groups`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_extension_packages`
--
ALTER TABLE `modx_extension_packages`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_fc_profiles`
--
ALTER TABLE `modx_fc_profiles`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_fc_sets`
--
ALTER TABLE `modx_fc_sets`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_files`
--
ALTER TABLE `modx_files`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=10;
--
-- AUTO_INCREMENT for table `modx_formit_forms`
--
ALTER TABLE `modx_formit_forms`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_lexicon_entries`
--
ALTER TABLE `modx_lexicon_entries`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_manager_log`
--
ALTER TABLE `modx_manager_log`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=746;
--
-- AUTO_INCREMENT for table `modx_media_sources`
--
ALTER TABLE `modx_media_sources`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=2;
--
-- AUTO_INCREMENT for table `modx_membergroup_names`
--
ALTER TABLE `modx_membergroup_names`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=2;
--
-- AUTO_INCREMENT for table `modx_member_groups`
--
ALTER TABLE `modx_member_groups`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=2;
--
-- AUTO_INCREMENT for table `modx_migx_configs`
--
ALTER TABLE `modx_migx_configs`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_migx_config_elements`
--
ALTER TABLE `modx_migx_config_elements`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_migx_elements`
--
ALTER TABLE `modx_migx_elements`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_migx_formtabs`
--
ALTER TABLE `modx_migx_formtabs`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_migx_formtab_fields`
--
ALTER TABLE `modx_migx_formtab_fields`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_property_set`
--
ALTER TABLE `modx_property_set`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_register_queues`
--
ALTER TABLE `modx_register_queues`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=4;
--
-- AUTO_INCREMENT for table `modx_register_topics`
--
ALTER TABLE `modx_register_topics`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=4;
--
-- AUTO_INCREMENT for table `modx_site_content`
--
ALTER TABLE `modx_site_content`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=25;
--
-- AUTO_INCREMENT for table `modx_site_htmlsnippets`
--
ALTER TABLE `modx_site_htmlsnippets`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=15;
--
-- AUTO_INCREMENT for table `modx_site_plugins`
--
ALTER TABLE `modx_site_plugins`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=9;
--
-- AUTO_INCREMENT for table `modx_site_snippets`
--
ALTER TABLE `modx_site_snippets`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=39;
--
-- AUTO_INCREMENT for table `modx_site_templates`
--
ALTER TABLE `modx_site_templates`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=12;
--
-- AUTO_INCREMENT for table `modx_site_tmplvars`
--
ALTER TABLE `modx_site_tmplvars`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=10;
--
-- AUTO_INCREMENT for table `modx_site_tmplvar_access`
--
ALTER TABLE `modx_site_tmplvar_access`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_site_tmplvar_contentvalues`
--
ALTER TABLE `modx_site_tmplvar_contentvalues`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=11;
--
-- AUTO_INCREMENT for table `modx_transport_providers`
--
ALTER TABLE `modx_transport_providers`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=3;
--
-- AUTO_INCREMENT for table `modx_users`
--
ALTER TABLE `modx_users`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=2;
--
-- AUTO_INCREMENT for table `modx_user_attributes`
--
ALTER TABLE `modx_user_attributes`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=2;
--
-- AUTO_INCREMENT for table `modx_user_group_roles`
--
ALTER TABLE `modx_user_group_roles`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=3;
--
-- AUTO_INCREMENT for table `modx_user_messages`
--
ALTER TABLE `modx_user_messages`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `modx_workspaces`
--
ALTER TABLE `modx_workspaces`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=2;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
