CREATE TABLE `modx_tickets_author_actions` (
  `id` int NOT NULL,
  `action` varchar(50) NOT NULL,
  `owner` int NOT NULL DEFAULT '0',
  `rating` decimal(12,2) DEFAULT '0.00',
  `multiplier` int DEFAULT '1',
  `ticket` int NOT NULL DEFAULT '0',
  `section` int NOT NULL DEFAULT '0',
  `createdby` int NOT NULL DEFAULT '0',
  `createdon` datetime NOT NULL,
  `year` year DEFAULT '0000',
  `month` int DEFAULT '0',
  `day` int DEFAULT '0',
  PRIMARY KEY (`id`,`action`,`owner`,`createdby`),
  KEY `createdon` (`createdon`),
  KEY `section` (`section`),
  KEY `ticket` (`ticket`),
  KEY `action` (`action`),
  KEY `owner` (`owner`),
  KEY `date` (`year`,`month`,`day`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;

INSERT INTO `modx_tickets_author_actions` (`id`, `action`, `owner`, `rating`, `multiplier`, `ticket`, `section`, `createdby`, `createdon`, `year`, `month`, `day`) VALUES
(19,	'view',	8,	0.10,	1,	19,	11,	8,	'2020-04-22 12:32:46',	'2020',	4,	22),
(24,	'view',	8,	0.10,	1,	24,	11,	8,	'2020-04-22 12:32:19',	'2020',	4,	22),
(66,	'ticket',	1,	10.00,	1,	66,	65,	1,	'2021-12-29 02:58:29',	'2021',	12,	29),
(67,	'ticket',	1,	10.00,	1,	67,	65,	1,	'2021-12-29 02:58:29',	'2021',	12,	29),
(68,	'ticket',	1,	10.00,	1,	68,	65,	1,	'2021-12-29 02:58:29',	'2021',	12,	29);

CREATE TABLE `modx_tickets_authors` (
  `id` int unsigned NOT NULL,
  `rating` decimal(12,2) DEFAULT '0.00',
  `createdon` datetime DEFAULT NULL,
  `visitedon` datetime DEFAULT NULL,
  `tickets` int unsigned DEFAULT '0',
  `comments` int unsigned DEFAULT '0',
  `views` int unsigned DEFAULT '0',
  `votes_tickets` decimal(12,2) DEFAULT '0.00',
  `votes_comments` decimal(12,2) DEFAULT '0.00',
  `stars_tickets` int unsigned DEFAULT '0',
  `stars_comments` int unsigned DEFAULT '0',
  `votes_tickets_up` int unsigned DEFAULT '0',
  `votes_tickets_down` int unsigned DEFAULT '0',
  `votes_comments_up` int unsigned DEFAULT '0',
  `votes_comments_down` int unsigned DEFAULT '0',
  `properties` text,
  PRIMARY KEY (`id`),
  KEY `rating` (`rating`),
  KEY `createdon` (`createdon`),
  KEY `visitedon` (`visitedon`),
  KEY `tickets` (`tickets`),
  KEY `comments` (`comments`),
  KEY `views` (`views`),
  KEY `votes` (`stars_comments`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;

INSERT INTO `modx_tickets_authors` (`id`, `rating`, `createdon`, `visitedon`, `tickets`, `comments`, `views`, `votes_tickets`, `votes_comments`, `stars_tickets`, `stars_comments`, `votes_tickets_up`, `votes_tickets_down`, `votes_comments_up`, `votes_comments_down`, `properties`) VALUES
(1,	30.00,	'2020-05-16 11:56:48',	'2022-01-17 11:52:16',	3,	0,	0,	0.00,	0.00,	0,	0,	0,	0,	0,	0,	NULL),
(8,	0.20,	'2020-03-26 00:14:06',	'2022-03-04 11:14:21',	0,	0,	2,	0.00,	0.00,	0,	0,	0,	0,	0,	0,	NULL),
(17,	0.00,	'2021-08-11 16:30:41',	'2021-08-11 17:51:43',	0,	0,	0,	0.00,	0.00,	0,	0,	0,	0,	0,	0,	NULL),
(21,	0.00,	'2021-08-12 02:16:43',	'2021-09-09 11:28:34',	0,	0,	0,	0.00,	0.00,	0,	0,	0,	0,	0,	0,	NULL),
(22,	0.00,	'2021-08-14 23:14:18',	'2021-08-16 16:10:28',	0,	0,	0,	0.00,	0.00,	0,	0,	0,	0,	0,	0,	NULL),
(23,	0.00,	'2021-08-30 22:02:03',	'2021-08-31 01:07:52',	0,	0,	0,	0.00,	0.00,	0,	0,	0,	0,	0,	0,	NULL),
(24,	0.00,	'2021-09-24 12:33:27',	'2021-10-17 11:48:26',	0,	0,	0,	0.00,	0.00,	0,	0,	0,	0,	0,	0,	NULL),
(25,	0.00,	'2021-09-24 12:35:48',	'2021-09-24 12:45:26',	0,	0,	0,	0.00,	0.00,	0,	0,	0,	0,	0,	0,	NULL);

CREATE TABLE `modx_tickets_comments` (
  `id` int unsigned NOT NULL AUTO_INCREMENT,
  `thread` int unsigned NOT NULL DEFAULT '0',
  `parent` int unsigned NOT NULL DEFAULT '0',
  `text` text NOT NULL,
  `raw` text NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `email` varchar(255) NOT NULL DEFAULT '',
  `ip` varchar(16) NOT NULL DEFAULT '0.0.0.0',
  `rating` smallint DEFAULT '0',
  `rating_plus` smallint DEFAULT '0',
  `rating_minus` smallint DEFAULT '0',
  `createdon` datetime DEFAULT NULL,
  `createdby` int unsigned NOT NULL DEFAULT '0',
  `editedon` datetime DEFAULT NULL,
  `editedby` int unsigned NOT NULL DEFAULT '0',
  `published` tinyint unsigned NOT NULL DEFAULT '1',
  `deleted` tinyint unsigned NOT NULL DEFAULT '0',
  `deletedon` datetime DEFAULT NULL,
  `deletedby` int unsigned NOT NULL DEFAULT '0',
  `properties` text,
  PRIMARY KEY (`id`),
  KEY `thread` (`thread`),
  KEY `parent` (`parent`),
  KEY `deleted` (`deleted`),
  KEY `published` (`published`),
  KEY `rating` (`rating`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;

INSERT INTO `modx_tickets_comments` (`id`, `thread`, `parent`, `text`, `raw`, `name`, `email`, `ip`, `rating`, `rating_plus`, `rating_minus`, `createdon`, `createdby`, `editedon`, `editedby`, `published`, `deleted`, `deletedon`, `deletedby`, `properties`) VALUES
(6,	3,	0,	'Жду новых статей!',	'Жду новых статей!',	'Danila',	'mrmega7744@mail.ru',	'5.139.43.237',	0,	0,	0,	'2020-03-10 12:25:09',	0,	NULL,	0,	1,	0,	NULL,	0,	'{\"additionalFields\":null,\"requiredFields\":\"name,email\"}'),
(7,	3,	6,	'Уже, работаем',	'Уже, работаем',	'Администратор по умолчанию',	'it@a1call.me',	'5.139.43.237',	0,	0,	0,	'2020-03-11 04:52:06',	1,	NULL,	0,	1,	0,	NULL,	0,	NULL),
(8,	1,	0,	'Кратко и точно. Жду новых статей!',	'Кратко и точно. Жду новых статей!',	'Пётр',	'petrov1987@mail.ru',	'85.173.93.162',	0,	0,	0,	'2020-04-22 12:47:49',	0,	NULL,	0,	1,	0,	NULL,	0,	'{\"additionalFields\":null,\"requiredFields\":\"name,email\"}');

CREATE TABLE `modx_tickets_files` (
  `id` int unsigned NOT NULL AUTO_INCREMENT,
  `parent` int unsigned NOT NULL DEFAULT '0',
  `class` varchar(100) DEFAULT NULL,
  `source` int unsigned DEFAULT '1',
  `name` varchar(255) NOT NULL,
  `description` text,
  `path` varchar(255) NOT NULL,
  `file` varchar(255) NOT NULL,
  `type` varchar(50) DEFAULT NULL,
  `size` int unsigned NOT NULL DEFAULT '0',
  `createdon` datetime DEFAULT NULL,
  `createdby` int unsigned NOT NULL DEFAULT '0',
  `rank` tinyint unsigned DEFAULT '0',
  `url` varchar(255) NOT NULL,
  `thumb` varchar(255) NOT NULL,
  `thumbs` text,
  `deleted` tinyint(1) DEFAULT '0',
  `properties` text,
  `hash` char(40) DEFAULT '',
  PRIMARY KEY (`id`),
  KEY `parent` (`parent`,`class`),
  KEY `source` (`source`),
  KEY `type` (`type`),
  KEY `deleted` (`deleted`),
  KEY `hash` (`hash`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;


CREATE TABLE `modx_tickets_mail_queues` (
  `id` int unsigned NOT NULL AUTO_INCREMENT,
  `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `uid` int unsigned NOT NULL DEFAULT '0',
  `subject` varchar(255) DEFAULT '',
  `body` text,
  `email` varchar(255) DEFAULT '',
  PRIMARY KEY (`id`),
  KEY `uid` (`uid`),
  KEY `email` (`email`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;


CREATE TABLE `modx_tickets_stars` (
  `id` int unsigned NOT NULL DEFAULT '0',
  `class` varchar(100) NOT NULL DEFAULT 'Ticket',
  `owner` int unsigned NOT NULL DEFAULT '0',
  `createdon` datetime DEFAULT NULL,
  `createdby` int unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`,`createdby`,`class`),
  KEY `createdon` (`createdon`),
  KEY `owner` (`owner`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;


CREATE TABLE `modx_tickets_threads` (
  `id` int unsigned NOT NULL AUTO_INCREMENT,
  `resource` int unsigned NOT NULL DEFAULT '0',
  `name` varchar(191) NOT NULL DEFAULT '',
  `subscribers` text NOT NULL,
  `createdon` datetime DEFAULT NULL,
  `createdby` int unsigned NOT NULL DEFAULT '0',
  `closed` tinyint unsigned NOT NULL DEFAULT '0',
  `deleted` tinyint unsigned NOT NULL DEFAULT '0',
  `deletedon` datetime DEFAULT NULL,
  `deletedby` int unsigned NOT NULL DEFAULT '0',
  `comment_last` int unsigned NOT NULL DEFAULT '0',
  `comment_time` datetime DEFAULT NULL,
  `comments` int unsigned DEFAULT '0',
  `properties` text,
  PRIMARY KEY (`id`),
  UNIQUE KEY `name` (`name`),
  KEY `resource` (`resource`),
  KEY `comment_last` (`comment_last`),
  KEY `comments` (`comments`),
  KEY `closed` (`closed`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;

INSERT INTO `modx_tickets_threads` (`id`, `resource`, `name`, `subscribers`, `createdon`, `createdby`, `closed`, `deleted`, `deletedon`, `deletedby`, `comment_last`, `comment_time`, `comments`, `properties`) VALUES
(1,	18,	'resource-18',	'[1]',	'2020-03-08 11:31:52',	1,	0,	0,	NULL,	0,	8,	'2020-04-22 12:47:49',	1,	'{\"thread\":\"resource-18\",\"fastMode\":true,\"gravatarIcon\":\"mm\",\"gravatarSize\":\"70\",\"gravatarUrl\":\"https:\\/\\/www.gravatar.com\\/avatar\\/\",\"tplCommentForm\":\"tpl.Tickets.comment.form\",\"tplCommentFormGuest\":\"commentFormTpl\",\"tplCommentAuth\":\"commentTpl\",\"tplCommentGuest\":\"commentTpl\",\"tplCommentDeleted\":\"tpl.Tickets.comment.one.deleted\",\"tplComments\":\"commentsWrapperTpl\",\"tplLoginToComment\":\"tpl.Tickets.comment.login\",\"tplCommentEmailOwner\":\"tpl.Tickets.comment.email.owner\",\"tplCommentEmailReply\":\"tpl.Tickets.comment.email.reply\",\"tplCommentEmailSubscription\":\"tpl.Tickets.comment.email.subscription\",\"tplCommentEmailBcc\":\"tpl.Tickets.comment.email.bcc\",\"tplCommentEmailUnpublished\":\"tpl.Tickets.comment.email.unpublished\",\"autoPublish\":true,\"autoPublishGuest\":true,\"formBefore\":false,\"depth\":0,\"allowGuest\":\"1\",\"allowGuestEdit\":true,\"allowGuestEmails\":false,\"enableCaptcha\":true,\"minCaptcha\":1,\"maxCaptcha\":10,\"requiredFields\":\"name,email\",\"threadUrl\":\"\",\"resource\":18,\"snippetPrepareComment\":\"\",\"commentEditTime\":\"600\"}'),
(2,	11,	'resource-11',	'[1]',	'2020-03-08 16:48:41',	1,	0,	0,	NULL,	0,	0,	NULL,	0,	'{\"thread\":\"resource-11\",\"fastMode\":true,\"gravatarIcon\":\"mm\",\"gravatarSize\":\"24\",\"gravatarUrl\":\"https:\\/\\/www.gravatar.com\\/avatar\\/\",\"tplCommentForm\":\"tpl.Tickets.comment.form\",\"tplCommentFormGuest\":\"tpl.Tickets.comment.form.guest\",\"tplCommentAuth\":\"tpl.Tickets.comment.one.auth\",\"tplCommentGuest\":\"tpl.Tickets.comment.one.guest\",\"tplCommentDeleted\":\"tpl.Tickets.comment.one.deleted\",\"tplComments\":\"tpl.Tickets.comment.wrapper\",\"tplLoginToComment\":\"tpl.Tickets.comment.login\",\"tplCommentEmailOwner\":\"tpl.Tickets.comment.email.owner\",\"tplCommentEmailReply\":\"tpl.Tickets.comment.email.reply\",\"tplCommentEmailSubscription\":\"tpl.Tickets.comment.email.subscription\",\"tplCommentEmailBcc\":\"tpl.Tickets.comment.email.bcc\",\"tplCommentEmailUnpublished\":\"tpl.Tickets.comment.email.unpublished\",\"autoPublish\":true,\"autoPublishGuest\":true,\"formBefore\":false,\"depth\":0,\"allowGuest\":false,\"allowGuestEdit\":true,\"allowGuestEmails\":false,\"enableCaptcha\":true,\"minCaptcha\":1,\"maxCaptcha\":10,\"requiredFields\":\"name,email\",\"threadUrl\":\"\",\"resource\":11,\"snippetPrepareComment\":\"\",\"commentEditTime\":\"600\"}'),
(3,	24,	'resource-24',	'[1]',	'2020-03-09 11:16:01',	1,	0,	0,	NULL,	0,	7,	'2020-03-11 04:52:06',	2,	'{\"thread\":\"resource-24\",\"fastMode\":true,\"gravatarIcon\":\"mm\",\"gravatarSize\":\"70\",\"gravatarUrl\":\"https:\\/\\/www.gravatar.com\\/avatar\\/\",\"tplCommentForm\":\"tpl.Tickets.comment.form\",\"tplCommentFormGuest\":\"commentFormTpl\",\"tplCommentAuth\":\"commentTpl\",\"tplCommentGuest\":\"commentTpl\",\"tplCommentDeleted\":\"tpl.Tickets.comment.one.deleted\",\"tplComments\":\"commentsWrapperTpl\",\"tplLoginToComment\":\"tpl.Tickets.comment.login\",\"tplCommentEmailOwner\":\"tpl.Tickets.comment.email.owner\",\"tplCommentEmailReply\":\"tpl.Tickets.comment.email.reply\",\"tplCommentEmailSubscription\":\"tpl.Tickets.comment.email.subscription\",\"tplCommentEmailBcc\":\"tpl.Tickets.comment.email.bcc\",\"tplCommentEmailUnpublished\":\"tpl.Tickets.comment.email.unpublished\",\"autoPublish\":true,\"autoPublishGuest\":true,\"formBefore\":false,\"depth\":0,\"allowGuest\":\"1\",\"allowGuestEdit\":true,\"allowGuestEmails\":false,\"enableCaptcha\":true,\"minCaptcha\":1,\"maxCaptcha\":10,\"requiredFields\":\"name,email\",\"threadUrl\":\"\",\"resource\":24,\"snippetPrepareComment\":\"\",\"commentEditTime\":\"600\"}'),
(5,	19,	'resource-19',	'[1]',	'2020-03-10 12:41:38',	1,	0,	0,	NULL,	0,	0,	NULL,	0,	'{\"thread\":\"resource-19\",\"fastMode\":true,\"gravatarIcon\":\"mm\",\"gravatarSize\":\"70\",\"gravatarUrl\":\"https:\\/\\/www.gravatar.com\\/avatar\\/\",\"tplCommentForm\":\"tpl.Tickets.comment.form\",\"tplCommentFormGuest\":\"commentFormTpl\",\"tplCommentAuth\":\"commentTpl\",\"tplCommentGuest\":\"commentTpl\",\"tplCommentDeleted\":\"tpl.Tickets.comment.one.deleted\",\"tplComments\":\"commentsWrapperTpl\",\"tplLoginToComment\":\"tpl.Tickets.comment.login\",\"tplCommentEmailOwner\":\"tpl.Tickets.comment.email.owner\",\"tplCommentEmailReply\":\"tpl.Tickets.comment.email.reply\",\"tplCommentEmailSubscription\":\"tpl.Tickets.comment.email.subscription\",\"tplCommentEmailBcc\":\"tpl.Tickets.comment.email.bcc\",\"tplCommentEmailUnpublished\":\"tpl.Tickets.comment.email.unpublished\",\"autoPublish\":true,\"autoPublishGuest\":true,\"formBefore\":false,\"depth\":0,\"allowGuest\":\"1\",\"allowGuestEdit\":true,\"allowGuestEmails\":false,\"enableCaptcha\":true,\"minCaptcha\":1,\"maxCaptcha\":10,\"requiredFields\":\"name,email\",\"threadUrl\":\"\",\"resource\":19,\"snippetPrepareComment\":\"\",\"commentEditTime\":\"600\"}');

CREATE TABLE `modx_tickets_totals` (
  `id` int unsigned NOT NULL,
  `class` varchar(100) NOT NULL,
  `tickets` int unsigned DEFAULT '0',
  `comments` int unsigned DEFAULT '0',
  `views` int unsigned DEFAULT '0',
  `stars` int unsigned DEFAULT '0',
  `rating` smallint DEFAULT '0',
  `rating_plus` smallint unsigned DEFAULT '0',
  `rating_minus` smallint unsigned DEFAULT '0',
  PRIMARY KEY (`id`,`class`),
  KEY `owner` (`rating`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;

INSERT INTO `modx_tickets_totals` (`id`, `class`, `tickets`, `comments`, `views`, `stars`, `rating`, `rating_plus`, `rating_minus`) VALUES
(0,	'Ticket',	0,	0,	0,	0,	0,	0,	0),
(0,	'TicketsSection',	0,	0,	0,	0,	0,	0,	0),
(11,	'TicketsSection',	0,	0,	3,	0,	0,	0,	0),
(18,	'Ticket',	0,	0,	0,	0,	0,	0,	0),
(19,	'Ticket',	0,	0,	1,	0,	0,	0,	0),
(24,	'Ticket',	0,	0,	2,	0,	0,	0,	0),
(43,	'TicketsSection',	0,	0,	0,	0,	0,	0,	0),
(65,	'TicketsSection',	3,	0,	0,	0,	0,	0,	0),
(66,	'Ticket',	0,	0,	0,	0,	0,	0,	0),
(67,	'Ticket',	0,	0,	0,	0,	0,	0,	0),
(68,	'Ticket',	0,	0,	0,	0,	0,	0,	0),
(83,	'TicketsSection',	0,	0,	0,	0,	0,	0,	0);

CREATE TABLE `modx_tickets_views` (
  `parent` int unsigned NOT NULL DEFAULT '0',
  `uid` int unsigned NOT NULL DEFAULT '0',
  `guest_key` char(32) NOT NULL DEFAULT '',
  `timestamp` datetime NOT NULL,
  PRIMARY KEY (`parent`,`uid`,`guest_key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;

INSERT INTO `modx_tickets_views` (`parent`, `uid`, `guest_key`, `timestamp`) VALUES
(1,	8,	'',	'2021-12-29 07:47:36'),
(1,	9,	'',	'2021-08-10 13:56:11'),
(1,	16,	'',	'2021-08-10 17:22:09'),
(1,	17,	'',	'2020-03-18 22:01:54'),
(1,	18,	'',	'2020-03-18 22:12:53'),
(1,	19,	'',	'2020-03-19 10:42:12'),
(1,	21,	'',	'2021-09-08 14:50:35'),
(1,	22,	'',	'2021-08-16 16:10:28'),
(1,	23,	'',	'2021-08-30 22:08:03'),
(1,	24,	'',	'2020-03-19 10:37:44'),
(2,	8,	'',	'2021-09-06 00:18:34'),
(2,	21,	'',	'2021-09-04 16:13:35'),
(3,	8,	'',	'2021-09-09 08:13:54'),
(3,	21,	'',	'2021-08-12 12:51:21'),
(4,	8,	'',	'2021-07-22 21:46:41'),
(5,	8,	'',	'2021-08-01 20:05:12'),
(5,	9,	'',	'2020-04-24 11:04:04'),
(7,	8,	'',	'2021-09-20 09:26:27'),
(7,	9,	'',	'2020-04-23 19:36:35'),
(10,	8,	'',	'2021-09-09 14:42:39'),
(10,	9,	'',	'2021-08-10 13:57:11'),
(10,	16,	'',	'2021-08-11 23:08:28'),
(11,	8,	'',	'2020-04-22 12:34:04'),
(11,	9,	'',	'2020-04-24 11:04:06'),
(14,	8,	'',	'2021-08-30 13:52:48'),
(14,	9,	'',	'2020-04-24 11:04:06'),
(14,	19,	'',	'2020-03-19 04:26:27'),
(14,	21,	'',	'2021-08-25 17:48:45'),
(17,	8,	'',	'2022-03-04 00:48:56'),
(17,	9,	'',	'2020-04-24 11:04:06'),
(17,	15,	'',	'2020-03-18 21:46:14'),
(17,	16,	'',	'2021-08-10 19:47:30'),
(17,	17,	'',	'2020-03-18 22:00:23'),
(17,	18,	'',	'2020-03-18 22:12:45'),
(17,	19,	'',	'2020-03-19 10:20:47'),
(17,	20,	'',	'2020-03-19 10:27:16'),
(17,	21,	'',	'2021-09-08 21:44:56'),
(17,	22,	'',	'2020-03-19 10:25:06'),
(17,	23,	'',	'2021-08-31 01:07:52'),
(17,	24,	'',	'2020-03-19 10:34:22'),
(19,	8,	'',	'2020-04-22 12:32:56'),
(24,	8,	'',	'2020-04-22 12:32:25'),
(24,	9,	'',	'2020-04-24 11:04:05'),
(29,	8,	'',	'2022-01-18 08:14:25'),
(29,	9,	'',	'2021-08-08 14:36:05'),
(29,	15,	'',	'2020-03-18 21:47:26'),
(29,	16,	'',	'2021-08-11 16:29:49'),
(29,	18,	'',	'2020-03-18 22:14:01'),
(29,	19,	'',	'2020-03-19 09:40:38'),
(29,	20,	'',	'2020-03-19 10:30:39'),
(29,	21,	'',	'2020-03-19 10:21:40'),
(29,	22,	'',	'2020-03-19 10:26:39'),
(29,	24,	'',	'2020-03-19 11:01:28'),
(31,	1,	'',	'2020-05-16 11:56:48'),
(31,	8,	'',	'2022-01-18 08:14:31'),
(31,	9,	'',	'2021-08-09 23:58:07'),
(31,	16,	'',	'2021-08-11 23:06:25'),
(31,	17,	'',	'2021-08-11 17:51:43'),
(31,	18,	'',	'2020-03-18 22:07:46'),
(31,	19,	'',	'2020-03-19 10:44:16'),
(31,	21,	'',	'2021-09-06 08:54:07'),
(31,	22,	'',	'2021-08-14 23:17:46'),
(31,	23,	'',	'2021-08-31 00:05:30'),
(31,	24,	'',	'2021-09-24 12:33:49'),
(32,	8,	'',	'2021-07-21 19:00:51'),
(32,	18,	'',	'2020-03-18 22:13:08'),
(32,	19,	'',	'2020-03-19 05:16:53'),
(32,	21,	'',	'2020-03-19 10:17:25'),
(32,	24,	'',	'2020-03-19 11:03:43'),
(33,	1,	'',	'2021-12-29 10:58:54'),
(33,	8,	'',	'2022-03-03 11:04:14'),
(33,	9,	'',	'2021-08-09 23:10:57'),
(33,	16,	'',	'2021-08-11 23:06:41'),
(33,	21,	'',	'2021-09-08 15:13:43'),
(33,	23,	'',	'2021-08-30 22:15:15'),
(33,	24,	'',	'2020-03-19 10:35:21'),
(33,	25,	'',	'2021-09-24 12:45:21'),
(34,	1,	'',	'2021-12-29 11:05:32'),
(34,	8,	'',	'2021-10-17 19:30:40'),
(34,	9,	'',	'2021-08-09 22:57:46'),
(34,	16,	'',	'2021-08-11 23:08:32'),
(34,	21,	'',	'2021-09-08 15:14:51'),
(34,	24,	'',	'2020-03-19 10:35:14'),
(35,	1,	'',	'2021-12-29 10:58:38'),
(35,	8,	'',	'2021-10-17 19:30:48'),
(35,	9,	'',	'2021-08-09 22:53:20'),
(35,	16,	'',	'2021-08-11 23:06:38'),
(35,	21,	'',	'2021-08-12 02:22:07'),
(35,	24,	'',	'2020-03-19 10:31:47'),
(35,	25,	'',	'2021-09-24 12:45:26'),
(36,	8,	'',	'2021-08-25 19:19:09'),
(36,	9,	'',	'2020-04-24 11:03:58'),
(36,	19,	'',	'2020-03-19 05:14:56'),
(36,	21,	'',	'2021-08-24 07:57:07'),
(37,	8,	'',	'2020-04-19 16:54:18'),
(39,	9,	'',	'2021-08-10 13:56:49'),
(40,	8,	'',	'2021-09-30 10:30:27'),
(41,	8,	'',	'2021-08-16 16:47:27'),
(41,	21,	'',	'2021-09-01 18:34:50'),
(42,	8,	'',	'2021-10-12 11:09:14'),
(42,	21,	'',	'2021-09-06 00:34:42'),
(43,	1,	'',	'2022-01-17 11:52:12'),
(43,	8,	'',	'2022-03-04 11:14:18'),
(43,	21,	'',	'2021-09-09 10:47:59'),
(43,	23,	'',	'2021-08-31 00:17:37'),
(43,	24,	'',	'2021-10-17 11:48:18'),
(43,	25,	'',	'2021-09-24 12:39:12'),
(44,	8,	'',	'2021-12-29 07:56:02'),
(44,	21,	'',	'2021-09-08 15:13:35'),
(44,	23,	'',	'2021-08-31 00:26:52'),
(44,	24,	'',	'2021-10-17 11:48:20'),
(45,	8,	'',	'2021-10-31 11:10:15'),
(45,	21,	'',	'2021-09-09 11:28:30'),
(45,	23,	'',	'2021-08-31 01:07:51'),
(45,	24,	'',	'2021-10-17 11:48:08'),
(46,	8,	'',	'2021-09-28 10:36:02'),
(46,	21,	'',	'2021-09-06 00:55:47'),
(46,	23,	'',	'2021-08-30 22:08:08'),
(47,	8,	'',	'2021-12-29 05:10:05'),
(47,	21,	'',	'2021-09-06 00:54:22'),
(47,	23,	'',	'2021-08-31 00:34:31'),
(47,	24,	'',	'2021-10-17 14:48:13'),
(48,	8,	'',	'2021-08-30 13:35:16'),
(48,	21,	'',	'2021-08-31 19:40:43'),
(51,	8,	'',	'2021-09-06 00:17:56'),
(54,	8,	'',	'2021-12-29 11:08:45'),
(54,	24,	'',	'2021-10-17 14:48:06'),
(55,	8,	'',	'2022-03-03 14:04:24'),
(55,	24,	'',	'2021-10-17 14:48:11');

CREATE TABLE `modx_tickets_votes` (
  `id` int unsigned NOT NULL DEFAULT '0',
  `class` varchar(100) NOT NULL,
  `owner` int unsigned NOT NULL DEFAULT '0',
  `value` tinyint(1) NOT NULL DEFAULT '0',
  `createdon` datetime DEFAULT NULL,
  `createdby` int unsigned NOT NULL DEFAULT '0',
  `ip` varchar(16) DEFAULT '0.0.0.0',
  PRIMARY KEY (`id`,`createdby`,`class`),
  KEY `createdon` (`createdon`),
  KEY `owner` (`owner`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;


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

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.9.3-pl',	'2022-05-26 05:03:24',	'2022-11-24 20:56:51',	'2022-06-27 00:42:09',	0,	1,	2,	0,	'ace-1.9.3-pl.transport.zip',	NULL,	'a:3:{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:271:\"--------------------\nExtra: Ace\n--------------------\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:4624:\"Changelog for Ace integration into MODx Revolution.\n\nAce 1.9.3 [15.05.2022]\n====================================\n- Updated: Move settings into an own file [#12]\n- Fixed: Ace TV input [#11]\n- Fixed: Prevent PHP warning: Undefined variable $field [#10]\n\nAce 1.9.2\n====================================\n- Updated: Corrected search form [#8]\n- Added: TV input Ace field [#9]\n\nAce 1.9.1\n====================================\n- Fixed: Changed fonts\n- Updated: emmet.js with the support flex css styles and many other combinations\n\nAce 1.9.0\n====================================\n- Added: autodetecting file mode by modelist.js [#7]\n- Added: new modes from ace-builds for version 1.2.0\n\nAce 1.8.0\n====================================\n- Added: autocompletion for php functions.\n\nAce 1.7.0\n====================================\n- Added: new system setting \"ace.grow\".\n- Added: new system setting \"ace.html_elements_mime\".\n\nAce 1.6.5\n====================================\n- Added: \"Twig\" syntax for support of Twig in chunks.\n- Changed: Plugin is not static anymore.\n\nAce 1.6.4\n====================================\n- Fixed: Support of emmet in smarty mode. Again.\n\nAce 1.6.3\n====================================\n- Fixed: Support of emmet in smarty mode.\n\nAce 1.6.2\n====================================\n- Fixed: Editor mode handling.\n- Added: \"Markdown\" syntax for mime type \"text/x-markdown\".\n\nAce 1.6.1\n====================================\n- Fixed : Work with enabled system setting \"compress_js\".\n\nAce 1.6.0\n====================================\n- Added: \"Smarty\" syntax for support of Fenom in chunks.\n- Updated: Ace to version 1.2.0.\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\";}',	'Ace',	'a:38:{s:2:\"id\";s:24:\"628075bba8801031285d3f42\";s:7:\"package\";s:24:\"4f6e2782f245544fe8000014\";s:12:\"display_name\";s:12:\"ace-1.9.3-pl\";s:4:\"name\";s:3:\"Ace\";s:7:\"version\";s:5:\"1.9.3\";s:13:\"version_major\";s:1:\"1\";s:13:\"version_minor\";s:1:\"9\";s:13:\"version_patch\";s:1:\"3\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:10:\"ibochkarev\";s:11:\"description\";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:12:\"instructions\";s:341:\"<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> (global usage), or <i>richtext</i> setting of certain resource to <b>false</b> (specific usage).</p><p></p>\";s:9:\"changelog\";s:4571:\"Ace 1.9.3 [15.05.2022]\n====================================\n- Updated: Move settings into an own file [#12]\n- Fixed: Ace TV input [#11]\n- Fixed: Prevent PHP warning: Undefined variable $field [#10]\n\nAce 1.9.2\n====================================\n- Updated: Corrected search form [#8]\n- Added: TV input Ace field [#9]\n\nAce 1.9.1\n====================================\n- Fixed: Changed fonts\n- Updated: emmet.js with the support flex css styles and many other combinations\n\nAce 1.9.0\n====================================\n- Added: autodetecting file mode by modelist.js [#7]\n- Added: new modes from ace-builds for version 1.2.0\n\nAce 1.8.0\n====================================\n- Added: autocompletion for php functions.\n\nAce 1.7.0\n====================================\n- Added: new system setting \"ace.grow\".\n- Added: new system setting \"ace.html_elements_mime\".\n\nAce 1.6.5\n====================================\n- Added: \"Twig\" syntax for support of Twig in chunks.\n- Changed: Plugin is not static anymore.\n\nAce 1.6.4\n====================================\n- Fixed: Support of emmet in smarty mode. Again.\n\nAce 1.6.3\n====================================\n- Fixed: Support of emmet in smarty mode.\n\nAce 1.6.2\n====================================\n- Fixed: Editor mode handling.\n- Added: \"Markdown\" syntax for mime type \"text/x-markdown\".\n\nAce 1.6.1\n====================================\n- Fixed : Work with enabled system setting \"compress_js\".\n\nAce 1.6.0\n====================================\n- Added: \"Smarty\" syntax for support of Fenom in chunks.\n- Updated: Ace to version 1.2.0.\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:\"createdon\";s:24:\"2022-05-15T03:38:35+0000\";s:9:\"createdby\";s:10:\"ibochkarev\";s:8:\"editedon\";s:24:\"2022-05-26T01:05:15+0000\";s:10:\"releasedon\";s:24:\"2022-05-15T03:38:35+0000\";s:9:\"downloads\";s:6:\"334828\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:1:\"2\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=628075bba8801031285d3f43\";s:9:\"signature\";s:12:\"ace-1.9.3-pl\";s:11:\"supports_db\";s:5:\"mysql\";s:16:\"minimum_supports\";s:1:\"2\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:68:\"http://modx.s3.amazonaws.com/extras/4f6e2782f245544fe8000014/ace.png\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"628075bba8801031285d3f43\";s:7:\"version\";s:24:\"628075bba8801031285d3f42\";s:8:\"filename\";s:26:\"ace-1.9.3-pl.transport.zip\";s:9:\"downloads\";s:4:\"1727\";s:6:\"lastip\";s:12:\"5.101.157.80\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=628075bba8801031285d3f43\";}s:17:\"package-signature\";s:12:\"ace-1.9.3-pl\";s:10:\"categories\";s:15:\"richtexteditors\";s:4:\"tags\";s:0:\"\";}',	1,	9,	3,	'pl',	0),
('admintools-1.15.2-pl',	'2022-03-21 08:35:02',	'2022-03-21 08:35:24',	'2022-03-21 08:35:24',	0,	1,	1,	0,	'admintools-1.15.2-pl.transport.zip',	NULL,	'a:10:{s:9:\"changelog\";s:4485:\"1.15.2-pl\r\n==============\r\n- Fixed a bug with incorrect type check in the alternative permissions module.\r\n\r\n1.15.1-pl\r\n==============\r\n- Fixed a bug with absent elements in the categories section [#23].\r\n- Fixed email login security issue (\"tpl.login.form\" chunk must be updated).\r\n- Other code optimization.\r\n\r\n1.15.0-pl\r\n==============\r\n- Added an unread messages indicator.\r\n- Fixed a bug with js files for backend users with restricted permissions (#19).\r\n- Moved the AdminTools service class from the model folder to the service folder.\r\n\r\n1.14.1-pl\r\n==============\r\n- Added a system setting to hide the lock menu item.\r\n- Updated the \"tpl.lockScreen\" chunk. Don\'t forget to update it.\r\n\r\n1.14.0-pl\r\n==============\r\n- Added ability to lock admin panel.\r\n\r\n1.13.1-pl\r\n==============\r\n- Fixed a bug with the last update.\r\n\r\n1.13.0-pl\r\n==============\r\n- Added a system setting to disable setting the authenticated user from \"mgr\" context for a guest user on a website.\r\n\r\n1.12.2-pl\r\n==============\r\n- Optimized for utf8mb4.\r\n- Fixed broken email authentication.\r\n- Fixed bug with creating a new admin notes.\r\n\r\n1.12.1-pl\r\n==============\r\n- Some bugfixes.\r\n\r\n1.12.0-pl\r\n==============\r\n- Added package action management which allows to prevent from installing, uninstalling, updating and removing packages.\r\n\r\n1.11.2-pl\r\n==============\r\n- Some code optimization (special thanks to Fi1osof).\r\n\r\n1.11.1-pl\r\n==============\r\n- Fixed error in the names of the two last added system settings.\r\n- Changed order of including css files.\r\n\r\n1.11.0-pl\r\n==============\r\n- Added 2 system settings - \"admintools_custom_css\" and \"admintools_custom_js\" which allow to add to the manager interface custom style and javascript files.\r\n- Tuned the purple theme.\r\n\r\n1.10.1-beta\r\n==============\r\n- Added the \'purple\' color theme.\r\n- Bugfixes.\r\n\r\n1.10.0-beta\r\n==============\r\n- Added color themes.\r\n- The resource tree can be moved to the right side.\r\n\r\n1.9.0-pl\r\n==============\r\n- Added plugin interface with bound events.\r\n\r\n1.8.2-pl\r\n==============\r\n- Added a checkbox \"Create cache\" to the resource form which allows to save the resource to the cache when you save it.\r\n- Admin notes can be imported and exported.\r\n\r\n1.8.1-beta\r\n==============\r\n- Fixed issue #8 with mbstring.\r\n\r\n1.8.0-beta\r\n==============\r\n- Added alternative permissions for resources.\r\n- Template link in the resource form is made as icon.\r\n- The \"description\" and \"introtext\" fields now are resizable.\r\n\r\n1.7.0-pl\r\n==============\r\n- Added animation for the main menu.\r\n- Added system setting to disable templates and resources relationship.\r\n\r\n1.6.0-pl\r\n==============\r\n- Added templates and resources relationship.\r\n\r\n1.5.0-pl\r\n==============\r\n- Added user notes functionality.\r\n\r\n1.4.1-pl\r\n==============\r\n- Made the alternate login interface in pure javascript. Remove the jQuery from the AdminLogin snippet.\r\n- Automatic logout inactive or blocked user if he is logged in.\r\n\r\n1.4.1-beta\r\n==============\r\n- Element names in the elements log are links now.\r\n- Fixed bug of the email authorization.\r\n\r\n1.4.0-beta\r\n==============\r\n- Backend users can authorize via email.\r\n- Some code optimization.\r\n\r\n1.3.0-pl\r\n==============\r\n- Added system setting for switching on/off the favorite elements function.\r\n- Added ability to clear only the saved resource cache (system setting \"clear_only resource_cache\").\r\n- Added system setting for hiding component description at menu \"Extras\".\r\n- The list of the edited elements is getting from the system \'manager_log\' table.\r\n- Added filter to the last edited elements grid.\r\n- The user settings of the favorite elements and the system settings save to the extended field of the user (special thanks to Lukas Zahnd).\r\n- Fixed some bugs (special thanks to Lukas Zahnd).\r\n\r\n1.2.1-pl\r\n==============\r\n- Fixed bug with favorites elements.\r\n\r\n1.2.0-pl\r\n==============\r\n- Added a log of recently edited elements to the tree toolbar.\r\n- Switch off check the elements permission for users with sudo while the tree is building.\r\n- Fixed some bugs.\r\n\r\n1.1.1-pl\r\n==============\r\n- Fixed session array for admintools.\r\n\r\n1.1.0-pl\r\n==============\r\n- Remember system settings state.\r\n- Added system setting allowing to switch off check the elements permission while the tree is building.\r\n- Show favorite elements without category folders.\r\n\r\n1.0.2-pl\r\n==============\r\n- Personal setting for each user.\r\n\r\n1.0.1-pl\r\n==============\r\n- Changed the cache path.\r\n\r\n1.0.0-pl\r\n==============\r\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:273:\"--------------------\nAdminTools\n--------------------\nAuthor: Sergey Shlokov <sergant210{at}bk.ru>\n--------------------\n\nA basic Extra for MODx Revolution Administrators.\n\nFeel free to suggest ideas/improvements/bugs on GitHub:\nhttp://github.com/sergant210/AdminTools/issues\";s:6:\"chunks\";a:2:{s:14:\"tpl.login.form\";s:1054:\"<div id=\"container\">\r\n	<div id=\"modx-login-logo\">\r\n		<!--[if gte IE 9]><!--><img src=\"/manager/templates/default/images/modx-logo-color.svg\" alt=\"MODX CMS/CMF\"><!--<![endif]-->\r\n		<!--[if lt IE 9]><img alt=\"MODX CMS/CMF\" src=\"/manager/templates/default/images/modx-logo-color.png\" /><![endif]-->\r\n	</div>\r\n\r\n	<div class=\"modx-form\" id=\"modx-login-panel\">\r\n		<div class=\"panel-title\">\r\n			<h2>[[++site_name]]</h2>\r\n		</div>\r\n		<div id=\"errormsg\">[[+errormsg]]</div>\r\n		<div class=\"panel-body\">\r\n			<form method=\"post\" action=\"\" id=\"manager-login-form\">\r\n				<div class=\"login-form-item\">\r\n					<div class=\"login-form-element\">\r\n						<input type=\"text\" placeholder=\"[[%admintools_username_email]]\" class=\"form-text\" name=\"userdata\" id=\"userdata\" autocomplete=\"on\">\r\n					</div>\r\n				</div>\r\n				<div class=\"form-action\">\r\n					<button id=\"send-email-btn\" value=\"1\" type=\"submit\" class=\"primary-button login-form-btn\" data-sending=\"[[%admintools_sending]]\">[[%admintools_send_authorization_link]]</button>\r\n				</div>\r\n			</form>\r\n		</div>\r\n	</div>\r\n</div>\";s:14:\"tpl.lockScreen\";s:2773:\"<!DOCTYPE html>\r\n<html lang=\"[[+lang]]\">\r\n<head>\r\n	<meta charset=\"UTF-8\">\r\n	<title>[[+title]]</title>\r\n	<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\r\n	<style>\r\n		.lockscreen {\r\n			background-image: url([[+assets_url]]components/admintools/images/lockscreen.jpg);\r\n		}\r\n		@media only screen and (max-width : 767px) {\r\n			.lockscreen {\r\n				background-image: url([[+assets_url]]components/admintools/images/lockscreen800.jpg);\r\n			}\r\n		}\r\n		@media only screen and (min-width : 768px) and (max-width: 1223px) {\r\n			.lockscreen {\r\n				background-image: url([[+assets_url]]components/admintools/images/lockscreen1280.jpg);\r\n			}\r\n		}\r\n		.lockscreen .container {\r\n			background-color: rgba(255,255,255,0.1);\r\n			margin: 5% auto 0;\r\n			padding: 20px;\r\n			text-align: center;\r\n			width: 250px;\r\n		}\r\n		.lockscreen .form-element {\r\n			box-sizing: border-box;\r\n			font-size: 14px;\r\n			margin: 5px 0;\r\n			padding: 6px 12px;\r\n			width: 220px;\r\n		}\r\n		.lockscreen .username {\r\n			font-size: 20px;\r\n			color: #fff;\r\n			padding: 10px;\r\n		}\r\n		.lockscreen input {\r\n			border: 1px solid transparent;\r\n		}\r\n		.lockscreen input:focus {\r\n			border-color: #45a2ec;\r\n			outline: 0;\r\n		}\r\n		.lockscreen .btn {\r\n			display: inline-block;\r\n			color: #fff;\r\n			background-color: #3697CD;\r\n			font-weight: bold;\r\n			line-height: 1.6;\r\n			text-align: center;\r\n			vertical-align: middle;\r\n			cursor: pointer;\r\n			border: 1px solid #3CA4DE;\r\n		}\r\n		.btn:hover {\r\n			color: #fff;\r\n			background-color: #286090;\r\n			border-color: #1e4c74;\r\n		}\r\n	</style>\r\n</head>\r\n<body class=\"lockscreen\">\r\n<div class=\"container\">\r\n	<div class=\"photo\"><img src=\"[[+photo]]\" alt=\"avatar\" onsubmit=\"return false;\"></div>\r\n	<div class=\"username\">[[+username]]</div>\r\n	<form name=\"unlockform\" action=\"[[+form_action]]\" method=\"POST\">\r\n		<div>\r\n			<input id=\"unlock_code\" class=\"form-element\" type=\"password\" name=\"unlock_code\" placeholder=\"[[+input_placeholder]]\" required>\r\n		</div>\r\n		<div>\r\n			<button class=\"form-element btn submit-btn\">[[%admintools_unlock]]</button>\r\n		</div>\r\n	</form>\r\n</div>\r\n<script>\r\n	document.forms[0].addEventListener(\"submit\", function(event) {\r\n		event.preventDefault();\r\n		let body = \"admintools_action=unlock&action=mgr/system/unlock&unlock_code=\" + encodeURIComponent(unlock_code.value) + \"&HTTP_MODAUTH=[[+auth]]\";\r\n		let xhr = new XMLHttpRequest();\r\n		xhr.open(this.getAttribute(\'method\'), this.getAttribute(\'action\'), true);\r\n		xhr.setRequestHeader(\"X-Requested-With\", \"XMLHttpRequest\");\r\n		xhr.setRequestHeader(\'Content-Type\', \'application/x-www-form-urlencoded\');\r\n		xhr.onreadystatechange = function() {\r\n			if (this.readyState == 4 && this.status == 200) {\r\n				document.location.reload();\r\n			}\r\n		};\r\n\r\n		xhr.send(body);\r\n	});\r\n</script>\r\n</body>\r\n</html>\";}s:13:\"setup-options\";s:38:\"admintools-1.15.2-pl/setup-options.php\";s:9:\"signature\";s:20:\"admintools-1.15.2-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:48:\"/workspace/package/install/admintools-1.15.2-pl/\";s:14:\"package_action\";i:0;}',	'AdminTools',	'a:35:{s:2:\"id\";s:3:\"135\";s:10:\"repository\";s:1:\"1\";s:4:\"name\";s:10:\"AdminTools\";s:9:\"createdby\";s:3:\"121\";s:9:\"createdon\";s:19:\"2015-10-25 17:53:34\";s:8:\"editedon\";s:19:\"0000-00-00 00:00:00\";s:7:\"license\";s:5:\"GPLv2\";s:10:\"screenshot\";s:0:\"\";s:9:\"downloads\";s:4:\"3270\";s:8:\"approved\";s:1:\"1\";s:6:\"active\";s:1:\"1\";s:7:\"package\";s:3:\"135\";s:7:\"version\";s:6:\"1.15.2\";s:13:\"version_major\";s:1:\"1\";s:13:\"version_minor\";s:2:\"15\";s:13:\"version_patch\";s:1:\"2\";s:7:\"release\";s:2:\"pl\";s:13:\"release_index\";s:0:\"\";s:9:\"signature\";s:20:\"admintools-1.15.2-pl\";s:12:\"instructions\";s:0:\"\";s:9:\"changelog\";s:5305:\"1.15.2-pl<br />\n==============<br />\n- Fixed a bug with incorrect type check in the alternative permissions module.<br />\n<br />\n1.15.1-pl<br />\n==============<br />\n- Fixed a bug with absent elements in the categories section &#91;#23&#93;.<br />\n- Fixed email login security issue (&quot;tpl.login.form&quot; chunk must be updated).<br />\n- Other code optimization.<br />\n<br />\n1.15.0-pl<br />\n==============<br />\n- Added an unread messages indicator.<br />\n- Fixed a bug with js files for backend users with restricted permissions (#19).<br />\n- Moved the AdminTools service class from the model folder to the service folder.<br />\n<br />\n1.14.1-pl<br />\n==============<br />\n- Added a system setting to hide the lock menu item.<br />\n- Updated the &quot;tpl.lockScreen&quot; chunk. Don&#039;t forget to update it.<br />\n<br />\n1.14.0-pl<br />\n==============<br />\n- Added ability to lock admin panel.<br />\n<br />\n1.13.1-pl<br />\n==============<br />\n- Fixed a bug with the last update.<br />\n<br />\n1.13.0-pl<br />\n==============<br />\n- Added a system setting to disable setting the authenticated user from &quot;mgr&quot; context for a guest user on a website.<br />\n<br />\n1.12.2-pl<br />\n==============<br />\n- Optimized for utf8mb4.<br />\n- Fixed broken email authentication.<br />\n- Fixed bug with new admin notes creating.<br />\n<br />\n1.12.1-pl<br />\n==============<br />\n- Some bugfixes.<br />\n<br />\n1.12.0-pl<br />\n==============<br />\n- Added package action management which allows to prevent from installing, uninstalling, updating and removing packages.<br />\n<br />\n1.11.2-pl<br />\n==============<br />\n- Some code optimization (special thanks to Fi1osof).<br />\n<br />\n1.11.1-pl<br />\n==============<br />\n- Fixed error in the names of the two last added system settings.<br />\n- Changed order of including css files.<br />\n<br />\n1.11.0-pl<br />\n==============<br />\n- Added 2 system settings - &quot;admintools_custom_css&quot; and &quot;admintools_custom_js&quot; which allow to add to the manager interface custom style and javascript files.<br />\n- Tuned the purple theme.<br />\n<br />\n1.10.1-beta<br />\n==============<br />\n- Added the &#039;purple&#039; color theme.<br />\n- Bugfixes.<br />\n<br />\n1.10.0-beta<br />\n==============<br />\n- Added color themes.<br />\n- The resource tree can be moved to the right side.<br />\n<br />\n1.9.0-pl<br />\n==============<br />\n- Added plugin interface with bound events.<br />\n<br />\n1.8.2-pl<br />\n==============<br />\n- Added a checkbox &quot;Create cache&quot; to the resource form which allows to save the resource to the cache when you save it.<br />\n- Admin notes can be imported and exported.<br />\n<br />\n1.8.1-beta<br />\n==============<br />\n- Fixed issue #8 with mbstring.<br />\n<br />\n1.8.0-beta<br />\n==============<br />\n- Added alternative permissions for resources.<br />\n- Template link in the resource form is made as icon.<br />\n- The &quot;description&quot; and &quot;introtext&quot; fields now are resizable.<br />\n<br />\n1.7.0-pl<br />\n==============<br />\n- Added animation for the main menu.<br />\n- Added system setting to disable templates and resources relationship.<br />\n<br />\n1.6.0-pl<br />\n==============<br />\n- Added templates and resources relations.<br />\n<br />\n1.5.0-pl<br />\n==============<br />\n- Добавлен функционал пользовательских заметок в админке.<br />\n<br />\n1.4.1-pl (14.04.2016)<br />\n==============<br />\n- Альтернативная форма авторизации переделана на чистый javascript.<br />\n- Добавлен механизм автоматического разлогинивание заблокированного пользователя.<br />\n<br />\n1.4.1-beta (05.02.2016)<br />\n==============<br />\n- Названия элементов в журнале изменений теперь в виде ссылок.<br />\n- Исправлена ошибка авторизации, когда id страницы авторизации не указан.<br />\n<br />\n1.4.0-beta (24.01.2016)<br />\n==============<br />\n- Авторизация в менеджере сайта через почту.<br />\n- Небольшие исправления и улучшения.<br />\n<br />\n1.3.0-pl (11.01.2016)<br />\n==============<br />\n- Added system setting for switching on/off the favorite elements function.<br />\n- Added ability to clear only the saved resource cache (system setting &quot;clear_only resource_cache&quot;).<br />\n- Added system setting for hiding component description at menu &quot;Extras&quot;.<br />\n- The list of the edited elements is getting from the system &#039;manager_log&#039; table.<br />\n- Added filter to the last edited elements grid.<br />\n- The user settings of the favorite elements and the system settings save to the extended field of the user (special thanks to Lukas Zahnd).<br />\n- Fixed some bugs (special thanks to Lukas Zahnd).<br />\n<br />\n1.2.1-pl<br />\n==============<br />\n- Fixed bug with favotites elements.<br />\n<br />\n1.2.0-pl<br />\n==============<br />\n- Added a log of recently edited elements to the tree toolbar.<br />\n- Switch off check the elements permission for users with sudo while the tree is building.<br />\n- Fixed some bugs.\";s:10:\"releasedby\";s:3:\"121\";s:10:\"releasedon\";s:19:\"2020-09-28 21:49:19\";s:16:\"minimum_supports\";s:3:\"2.3\";s:8:\"supports\";s:0:\"\";s:11:\"minimum_php\";s:3:\"5.6\";s:10:\"deprecated\";s:1:\"0\";s:10:\"version_id\";s:4:\"4308\";s:6:\"author\";s:25:\"Сергей Шлоков\";s:11:\"description\";s:141:\"Компонент, расширяющий функциональные возможности административной панели.\";s:5:\"price\";s:1:\"0\";s:12:\"display_name\";s:20:\"admintools-1.15.2-pl\";s:11:\"supports_db\";s:5:\"mysql\";s:8:\"location\";s:98:\"https://modstore.pro/extras/package/135?version_id=4308&username=&api_key=&http_host=vpn.a1call.me\";s:4:\"file\";a:2:{s:8:\"location\";s:98:\"https://modstore.pro/extras/package/135?version_id=4308&username=&api_key=&http_host=vpn.a1call.me\";s:9:\"transport\";s:4:\"true\";}}',	1,	15,	2,	'pl',	0),
('backupmodx-3.1.0-pl',	'2023-10-08 21:50:18',	'2023-10-08 21:53:51',	'2023-10-08 21:51:03',	0,	1,	1,	0,	'backupmodx-3.1.0-pl.transport.zip',	NULL,	'a:5:{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:310:\"# BackupMODX\n\nDashboard widget to backup your MODX site\n\n- Author: Jan Dähne <info@quadro-system.de>\n- License: GPLv2\n\n## Installation\n\nMODX Package Management\n\n## Documentation\n\nhttps://www.quadro-system.de/modx-extras/backup-modx/\n\n## Bugs and Feature Requests\n\nhttps://github.com/jdaehne/BackupMODX/issues\n\";s:9:\"changelog\";s:2770:\"# Changelog\n\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),\nand this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).\n\n## [3.1.0] - 2021-12-06\n\n### Added\n\n- PHP 8 compatibility\n- Install the composer dependencies directly on the server\n\n### Changed\n\n- Change dependency from chumper/zipper to madnest/madzipper\n\n## [3.0.5] - 2021-12-06\n\n### Changed\n\n- Updated dependencies\n\n### Fixed\n\n- Fix cleaning backups deleting all backups [#68]\n\n## [3.0.4] - 2021-08-30\n\n### Fixed\n\n- Fix installation issue when upgrading from an old version [#67]\n\n## [3.0.3] - 2021-03-11\n\n### Fixed\n\n- Fix creating a backup note with the widget [#64]\n- Fix not hiding the backup actions after backup [#65]\n\n## [3.0.2] - 2021-03-11\n\n### Added\n\n- MODX 3 compatibility\n- System setting for the timelimit\n\n## [3.0.1] - 2019-09-19\n\n### Added\n\n- Extend logging information\n- Catch construct errors of chumper/zipper\n- Add lexicon editing to Crowdin\n\n## [3.0.0] - 2019-07-19\n\n### Added\n\n- Complete rewrite\n- Use ifsnop/mysqldump-php and Chumper/Zipper composer packages\n- Debug option logging the files to backup and other information in backupmodx.log\n- Completely AJAX driven dashboard widget\n- Every text displayed in the browser is translateable\n- Catch an error during php shutdown to display (i.e. maximum execution time) errors\n\n### Removed\n\n- PHP exec calls\n\n## [2.0.1] - 2018-12-31\n\n### Fixed\n\n- Ajax timeout\n- Download large files\n- Custom assets_path (Thanks to mcnickel)\n\n## [2.0.0] - 2018-12-29\n\n### Added\n\n- Add cron scheduled backups\n- Add restore Database\n\n### Changed\n\n- Redesign Dashboard-Widget\n\n## [1.0.5] - 2016-02-17\n\n### Added\n\n- Adding an optional readme file\n- Define additional files and folders to exclude in the backup\n- Define a directory to place the backup (inside or outside the webroot)\n\n### Fixed\n\n- Ability to change tar-alias for different hosting-provider\n- Keeps cache-folder included - only excludes all files inside the cache-folder to achieve a smaller tar-archive\n\n## [1.0.4] - 2016-01-20\n\n### Fixed\n\n- Placing the sql-file in the root of combined tar-archive\n- Excluding cache-folder to achieve smaller files\n\n## [1.0.3] - 2016-01-18\n\n### Added\n\n- Placing the sql-file in the root of combined tar-archive\n- Checking if shell-commands working\n- Excluding cache-folder to achieve smaller files\n- Adding abbility to change tar-alias for different hosting-provider\n\n## [1.0.2] - 2016-01-13\n\n### Added\n\n- Ability to define groups that can see the widget. Default is only: Administartor\n\n## [1.0.1] - 2016-01-06\n\n### Added\n\n- Include \"core-folder\" placed outside the webroot.\n\n## [1.0.0] - 2016-01-02\n\n### Added\n\n- Initial Version\n\";s:13:\"setup-options\";s:37:\"backupmodx-3.1.0-pl/setup-options.php\";s:8:\"requires\";a:2:{s:3:\"php\";s:5:\">=7.4\";s:4:\"modx\";s:5:\">=2.8\";}}',	'BackupMODX',	'a:38:{s:2:\"id\";s:36:\"9906688e-801a-4887-bd85-b8f3909d2e60\";s:7:\"package\";s:36:\"99066751-5d3b-4794-9415-bb8df534b894\";s:12:\"display_name\";s:19:\"backupmodx-3.1.0-pl\";s:4:\"name\";s:10:\"BackupMODX\";s:7:\"version\";s:5:\"3.1.0\";s:13:\"version_major\";s:1:\"3\";s:13:\"version_minor\";s:1:\"1\";s:13:\"version_patch\";s:1:\"0\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:6:\"quadro\";s:11:\"description\";s:809:\"The BackupMODX extra is a tiny dashboard widget. Just place the widget into your dashboard and click the \"Backup\" button whenever you need a quick backup of your site. You can select either to backup your database, files or both. After the backup is finished you can download the files as a zip-archive. Just click the \"Remove Backup\" button after your download is finished to remove the backup.\n\nThe extra will backup all files and folders inside your MODX installation and will also include the core-folder if placed outside the web-root.\n\nThe widget is tested in different hosting environments and it works for our needs. If you have any problems/errors while using this extra - please let us know. If you also know how to enhance the extra/code – please feel free to contribute to the GitHub Repository.\";s:12:\"instructions\";s:23:\"MODX Package Management\";s:9:\"changelog\";s:142:\"- PHP 8 compatibility\n- Install the composer dependencies directly on the server\n- Change dependency from chumper/zipper to madnest/madzipper\n\";s:9:\"createdon\";s:25:\"2023-01-13T00:49:33+00:00\";s:9:\"createdby\";s:4:\"jako\";s:8:\"editedon\";s:25:\"2023-05-04T19:23:57+00:00\";s:10:\"releasedon\";s:25:\"2023-01-13T00:49:33+00:00\";s:9:\"downloads\";s:5:\"34149\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:4:\"true\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:36:\"9861b09b-7176-455b-a9c1-bb7728924ad8\";s:8:\"supports\";s:3:\"2.8\";s:8:\"location\";s:120:\"https://rest.modx.com/extras/download/?id=9906688e-801a-4887-bd85-b8f3909d2e60&uuid=c803e3d7-eb87-4a06-aa7c-3772797e6da8\";s:9:\"signature\";s:19:\"backupmodx-3.1.0-pl\";s:11:\"supports_db\";s:0:\"\";s:16:\"minimum_supports\";s:3:\"2.8\";s:9:\"breaks_at\";s:5:\"100.0\";s:10:\"screenshot\";s:0:\"\";s:4:\"file\";a:7:{s:2:\"id\";s:36:\"9906688e-801a-4887-bd85-b8f3909d2e60\";s:7:\"version\";s:36:\"9906688e-801a-4887-bd85-b8f3909d2e60\";s:8:\"filename\";s:33:\"backupmodx-3.1.0-pl.transport.zip\";s:9:\"downloads\";s:4:\"1261\";s:6:\"lastip\";s:12:\"94.46.148.31\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:120:\"https://rest.modx.com/extras/download/?id=9906688e-801a-4887-bd85-b8f3909d2e60&uuid=c803e3d7-eb87-4a06-aa7c-3772797e6da8\";}s:17:\"package-signature\";s:19:\"backupmodx-3.1.0-pl\";s:10:\"categories\";s:14:\"administration\";s:4:\"tags\";s:0:\"\";}',	3,	1,	0,	'pl',	0),
('clientconfig-2.3.0-pl',	'2022-03-21 08:40:45',	'2022-03-21 08:40:57',	NULL,	0,	1,	1,	0,	'clientconfig-2.3.0-pl.transport.zip',	NULL,	'a:4:{s:7:\"license\";s:1109:\"The MIT License (MIT)\n\nCopyright (c) 2016 Mark Hamstra Web Development <hello@markhamstra.com>\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n\";s:6:\"readme\";s:853:\"-------------------------\nClientConfig\n-------------------------\nAuthor: Mark Hamstra\nContact: mark@modmore.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\nLicensed under the MIT.\";s:9:\"changelog\";s:6505:\"ClientConfig 2.3.0-pl\n---------------------\nReleased on 2019-10-24\n\n- Add icon to the menu item (when moved to the top navigation) [#175]\n- Make placeholders available for inherited fenom templates [#173, #174]\n- Make textarea fields bigger and automatically growing with the content [#172]\n- Allow a hash in the url containing the ID of a group to automatically open to that tab [#169]\n- Add a line/divider field type to create simple sections [#149]\n- Add a code field type (requires Ace editor) for things like custom CSS or other markup [#144]\n- Add an email field type which validates the value to be an email address [#65]\n- Include OnHandleRequest plugin event (alongside OnMODXInit), to make ClientConfig play nicer with various context routing and other solutions that don\'t use OnMODXInit [#140]\n- Add separate \"Save\" and \"Save and close\" buttons to the setting window [#135]\n\nClientConfig 2.2.0-pl\n---------------------\nReleased on 2019-08-19\n\n- Fix media source path being included for empty values [#152]\n- When context values are empty, it will now fall back to the global value\n\nClientConfig 2.1.0-pl\n---------------------\nReleased on 2018-12-05\n\n- Update menu to no longer rely on modAction, instead using namespace routing [#158, #139]\n- Fix image/file fields not refreshing when switching context [#147, #155]\n- Adjust plugin to accept both OnMODXInit and OnHandleRequest so you can change the event it runs on, if needed [#140]\n- Prevent events (i.e., priority) from being overwritten on upgrade [#148]\n\nClientConfig 2.0.0-pl\n---------------------\nReleased on 2018-06-26\n\n- Don\'t add _duplicate to the key when duplicating a setting [#142]\n- Updated German [#141], Russian [#145] and Dutch translations\n\nClientConfig 2.0.0-rc1\n----------------------\nReleased on 2017-10-04\n\n- ClientConfig can now (optionally) manage settings for different contexts [#4/#112]\n- Media fields (image/file) now prefix the media source url [#124]\n- Allow snippet/chunk tags in options for the dropdown field [#104]\n- Updated minimum requirements to PHP 5.5.0 and MODX 2.5.2.\n- Added separate clientconfig.categories lexicon for the vertical tabs interface [#91]\n\nClientConfig 1.4.2-pl\n---------------------\nReleased on 2017-07-22\n\n- Restore PHP 5.3 compatibility in creating settings. Note: next release will require 5.5+!\n- Fix issue saving settings on certain environments due to missing value for source [#129]\n- Fix incorrect header/container alignment in both manager pages [#128]\n- Fix (unused) namespace assets path (on new installs) [#126]\n\nClientConfig 1.4.1-pl\n---------------------\nReleased on 2017-02-02\n\n- Fix bug where the new source dropdown does not appear for image field types\n\nClientConfig 1.4.0-pl\n---------------------\nReleased on 2017-01-31\n\n- Fix loading of TinyMCE RTE, causing it to be initialised without configuration [#122]\n- Add ClientConfig_ConfigChange event to be able of hooking into configuration changes [#117]\n- Change plugin event from OnHandleRequest to OnMODXInit [#87, #109, #115]\n- Enable inline editing in the admin component [#94, #95, #114]\n- Fix field-required errors not being shown by adding a popup\n- Accept 0 as valid required value on the number input [#119]\n- Add a Password input type [#105]\n- Add a File input type [#36]\n- Don\'t show \"Error adding field\" errors during installation/upgrade [#92]\n- Fix loading RTE if the field key contains a dot [#89]\n- Add CMD/CTRL + S shortcut for saving the configuration [#80]\n- Preserve linebreaks when editing a setting in the admin section by using a textarea for the value [#69]\n- Relicense under the MIT license instead of GPL [#67]\n- Allow specifying a media source for the image input type [#66]\n\nClientConfig 1.3.2-pl\n---------------------\nReleased on 2015-12-09\n\n- Update French translation\n- Make sure image field uses the MODX default media source\n- Respect manager_date_format and manager_time_format settings\n\nClientConfig 1.3.1-pl\n---------------------\nReleased 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\nClientConfig 1.3.0-pl\n---------------------\nReleased 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\nClientConfig 1.2.1-pl\n---------------------\nReleased 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\nClientConfig 1.2.0-pl\n---------------------\nReleased 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\nClientConfig 1.1.2-pl\n---------------------\nReleased 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  for admins. (Thanks @fractalwolfe!)\n\nClientConfig 1.1.1-pl\n---------------------\nReleased 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\nClientConfig 1.1.0-pl\n---------------------\nReleased 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\nClientConfig 1.0.0-pl\n---------------------\nReleased on 2012-12-09\n\nFirst release\n\";s:13:\"setup-options\";s:39:\"clientconfig-2.3.0-pl/setup-options.php\";}',	'ClientConfig',	'a:38:{s:2:\"id\";s:24:\"5db1a5623425f965ee02ca92\";s:7:\"package\";s:24:\"50c3f87ef245542fc1000033\";s:12:\"display_name\";s:21:\"clientconfig-2.3.0-pl\";s:4:\"name\";s:12:\"ClientConfig\";s:7:\"version\";s:5:\"2.3.0\";s:13:\"version_major\";s:1:\"2\";s:13:\"version_minor\";s:1:\"3\";s:13:\"version_patch\";s:1:\"0\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:5:\"markh\";s:11:\"description\";s:813:\"ClientConfig gives your client a user-friendly interface for making site wide changes, while you as the administrator set up the different options available to the end-user.\n\n**New in ClientConfig 2.0: &#91;context-aware settings&#93;(https://www.modmore.com/blog/2017/clientconfig-2-context-settings/)!**\n\nPossible uses include:\n\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- Manage theme/style settings\n\n&#91;Please report bugs and request features on Github&#93;(https://github.com/modmore/ClientConfig). Happy with ClientConfig? &#91;Please consider making a donation&#93;(https://modmore.com/extras/clientconfig/donate/).\";s:12:\"instructions\";s:537:\"<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. </p><p>You can use the values from the settings by using either the system setting tag syntax , or by using $modx->getOption(\'key\') in code. </p><p>For further information, <a href=\"https://docs.modmore.com/en/Open_Source/ClientConfig/index.html\" title=\"\" target=\"\">refer to the documentation</a>.</p>\";s:9:\"changelog\";s:8816:\"**ClientConfig 2.3.0-pl** :: 2019-10-24\n\n- Add icon to the menu item (when moved to the top navigation) &#91;#175&#93;\n- Make placeholders available for inherited fenom templates &#91;#173, #174&#93;\n- Make textarea fields bigger and automatically growing with the content &#91;#172&#93;\n- Allow a hash in the url containing the ID of a group to automatically open to that tab &#91;#169&#93;\n- Add a line/divider field type to create simple sections &#91;#149&#93;\n- Add a code field type (requires Ace editor) for things like custom CSS or other markup &#91;#144&#93;\n- Add an email field type which validates the value to be an email address &#91;#65&#93;\n- Include OnHandleRequest plugin event (alongside OnMODXInit), to make ClientConfig play nicer with various context routing and other solutions that don\'t use OnMODXInit &#91;#140&#93;\n- Add separate \"Save\" and \"Save and close\" buttons to the setting window &#91;#135&#93;\n\n**ClientConfig 2.2.0-pl** :: 2019-08-19\n\n- Fix media source path being included for empty values &#91;#152&#93;\n- When context values are empty, it will now fall back to the global value\n\n<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><b>ClientConfig 2.1.0-pl </b>:: 2018-12-05</p><p><ul><li>Update menu to no longer rely on modAction, instead using namespace routing &#91;#158, #139&#93;</li><li>Fix image/file fields not refreshing when switching context &#91;#147, #155&#93;</li><li>Adjust plugin to accept both OnMODXInit and OnHandleRequest so you can change the event it runs on, if needed &#91;#140&#93;</li><li>Prevent events (i.e., priority) from being overwritten on upgrade &#91;#148&#93;</li></ul></p><p></p><p style=\"widows: auto;\"><b>ClientConfig 2.0.0-pl </b>:: 2018-06-26</p><p style=\"widows: auto;\"></p><ul><li>Don\'t add _duplicate to the key when duplicating a setting &#91;#142&#93;</li><li>Updated German &#91;#141&#93;, Russian &#91;#145&#93; and Dutch translations</li></ul><p></p><p style=\"widows: auto;\"><b>ClientConfig 2.0.0-rc1 </b>:: 2017-10-04</p><p style=\"widows: auto;\"></p><ul><li>ClientConfig can now (optionally) manage settings for different contexts &#91;#4/#112&#93;</li><li>Media fields (image/file) now prefix the media source url &#91;#124&#93;</li><li>Allow snippet/chunk tags in options for the dropdown field &#91;#104&#93;</li><li>Updated minimum requirements to PHP 5.5.0 and MODX 2.5.2. </li><li>Added separate clientconfig.categories lexicon for the vertical tabs interface &#91;#91&#93;</li></ul><p></p><p style=\"widows: auto;\"><b>ClientConfig 1.4.2-pl</b> :: 2017-07-22<b></b></p><p style=\"widows: auto;\"></p><ul><li>Restore PHP 5.3 compatibility in creating settings. <b>Note: next release will require 5.5+!</b></li><li>Fix issue saving settings on certain environments due to missing value for source &#91;#129&#93;</li><li>Fix incorrect header/container alignment in both manager pages &#91;#128&#93;</li><li>Fix (unused) namespace assets path (on new installs) &#91;#126&#93;</li></ul><p></p><p style=\"widows: auto;\"><b>ClientConfig 1.4.1</b><b>-pl</b> :: 2017-02-01</p><p style=\"widows: auto;\"></p><ul><li>Fix bug where the new source dropdown does not appear for image field types</li></ul><p></p><p style=\"widows: auto;\"><b>ClientConfig 1.4.0-pl</b> :: 2017-01-31</p><ul><li>Fix loading of TinyMCE RTE, causing it to be initialised without configuration &#91;#122&#93;</li><li>Add ClientConfig_ConfigChange event to be able of hooking into configuration changes &#91;#117&#93;</li><li>Change plugin event from OnHandleRequest to OnMODXInit &#91;#87, #109, #115&#93;</li><li>Enable inline editing in the admin component &#91;#94, #95, #114&#93;</li><li>Fix field-required errors not being shown by adding a popup</li><li>Accept 0 as valid required value on the number input &#91;#119&#93;</li><li>Add a Password input type &#91;#105&#93;</li><li>Add a File input type &#91;#36&#93;</li><li>Don\'t show \"Error adding field\" errors during installation/upgrade &#91;#92&#93;</li><li>Fix loading RTE if the field key contains a dot &#91;#89&#93;</li><li>Add CMD/CTRL + S shortcut for saving the configuration &#91;#80&#93;</li><li>Preserve linebreaks when editing a setting in the admin section by using a textarea for the value &#91;#69&#93;</li><li>Relicense under the MIT license instead of GPL &#91;#67&#93;</li><li>Allow specifying a media source for the image input type &#91;#66&#93;</li></ul><p style=\"widows: auto;\"><b>ClientConfig 1.3.2-pl</b> :: 2015-12-09</p><p style=\"widows: auto;\"></p><ul><li>Update French translation</li><li>Make sure image field uses the MODX default media source</li><li>Respect manager_date_format and manager_time_format settings</li></ul><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 </p><p style=\"margin-bottom: 15px; orphans: auto; text-align: start; text-indent: 0px; widows: auto;\"></p><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><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> :: July 19th, 2014</p><p></p><ul><li>#27  Ability to import/export groups and settings</li><li>#16  Auto-select first group when adding a setting</li><li>#15  Force admins to create a group before creating a setting, as settings need groups</li><li>#76  Fix issue where unchecking a checkbox would fail if the setting was required</li><li>#78  Make the is_required column show Yes/No instead of true/false</li><li>#60  Get rid of an extra border</li><li>#75  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> :: January 7th, 2014 </p><ul><li>#57  Add Google Font input type (Thanks @garryn)</li><li>#63  Fix issue loading more than one rich text field</li></ul><p><b>ClientConfig v1.2.0</b> :: August 16th, 2013 (modmore.com) / November 14th, 2013 (modx.com)</p><ul><li>#38  Add setting (vertical_tabs) to allow stacking groups vertically instead of horizontal tabs</li><li>#46  Add ability to duplicate a setting</li><li>#45  Show field options field when editing a select box setting.</li><li>#54  Add Rich Text input type.</li><li>Improved width consistency of input items.</li><li>#37  Added input type Image (thanks COEX!)</li><li>#3   Fix/add colorpicker input type (thanks COEX!)</li></ul><p><b>ClientConfig v1.1.2</b> :: 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  Show field descriptions under the fields. (Thanks @fractalwolfe!)</li><li>#40  Add placeholder tooltips with the  for admins. (Thanks @fractalwolfe!)</li></ul><p></p><p><b>ClientConfig v1.1.1</b> :: December 31st, 2012</p><p></p><ul><li>#35  Don\'t strip out tags when saving values.</li><li>#39  Increase database field max sizes for longer descriptions and values.</li><li>#33  Make sure to show message when no tabs are to be shown.</li><li>#34  Prevent E_WARNING when there are no settings configured.</li></ul><p></p><p><b>ClientConfig v1.1.0</b> :: December 16th, 2012</p><p></p><p></p><ul><li>#26  Add ability to manually sort Settings within a Group</li><li>#25  Add ability to manually sort Groups</li><li>#21  Add Filter on Group for settings.</li><li>#24  Remember last visited tab in both admin and client view.</li><li>#22  Add \"Help!\" button on Admin panel linking to RTFM instructions.</li><li>Improve checking if key exists on updating a setting.</li><li>#30  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> :: December 9th, 2012</p><p></p><p>Initial release.</p><p></p>\";s:9:\"createdon\";s:24:\"2019-10-24T13:21:38+0000\";s:9:\"createdby\";s:5:\"markh\";s:8:\"editedon\";s:24:\"2022-03-21T08:02:25+0000\";s:10:\"releasedon\";s:24:\"2019-10-24T13:21:38+0000\";s:9:\"downloads\";s:5:\"80408\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:3:\"MIT\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:3:\"2.5\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=5db1a5623425f965ee02ca93\";s:9:\"signature\";s:21:\"clientconfig-2.3.0-pl\";s:11:\"supports_db\";s:5:\"mysql\";s:16:\"minimum_supports\";s:3:\"2.5\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:77:\"http://modx.s3.amazonaws.com/extras/50c3f87ef245542fc1000033/clientconfig.jpg\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"5db1a5623425f965ee02ca93\";s:7:\"version\";s:24:\"5db1a5623425f965ee02ca92\";s:8:\"filename\";s:35:\"clientconfig-2.3.0-pl.transport.zip\";s:9:\"downloads\";s:5:\"23135\";s:6:\"lastip\";s:11:\"85.140.4.14\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=5db1a5623425f965ee02ca93\";}s:17:\"package-signature\";s:21:\"clientconfig-2.3.0-pl\";s:10:\"categories\";s:61:\"administration,administration,personalization,personalization\";s:4:\"tags\";s:30:\"setting,settings,configuration\";}',	2,	3,	0,	'pl',	0),
('clientconfig-2.3.1-pl',	'2022-07-18 07:09:33',	'2022-07-18 05:09:48',	'2022-07-18 07:09:48',	0,	1,	1,	0,	'clientconfig-2.3.1-pl.transport.zip',	NULL,	'a:10:{s:7:\"license\";s:1109:\"The MIT License (MIT)\n\nCopyright (c) 2016 Mark Hamstra Web Development <hello@markhamstra.com>\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n\";s:6:\"readme\";s:853:\"-------------------------\nClientConfig\n-------------------------\nAuthor: Mark Hamstra\nContact: mark@modmore.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\nLicensed under the MIT.\";s:9:\"changelog\";s:6778:\"ClientConfig 2.3.1-pl\n---------------------\nReleased on 2022-06-13\n\n- Fix \"Choose Context\" combobox not loading in MODX 3.x [#193]  \n- Fix double asterisks being displayed on required fields in MODX 3.x [#189]\n- Fix admin grids not resizing when browser is resized [#194]\n\nClientConfig 2.3.0-pl\n---------------------\nReleased on 2019-10-24\n\n- Add icon to the menu item (when moved to the top navigation) [#175]\n- Make placeholders available for inherited fenom templates [#173, #174]\n- Make textarea fields bigger and automatically growing with the content [#172]\n- Allow a hash in the url containing the ID of a group to automatically open to that tab [#169]\n- Add a line/divider field type to create simple sections [#149]\n- Add a code field type (requires Ace editor) for things like custom CSS or other markup [#144]\n- Add an email field type which validates the value to be an email address [#65]\n- Include OnHandleRequest plugin event (alongside OnMODXInit), to make ClientConfig play nicer with various context routing and other solutions that don\'t use OnMODXInit [#140]\n- Add separate \"Save\" and \"Save and close\" buttons to the setting window [#135]\n\nClientConfig 2.2.0-pl\n---------------------\nReleased on 2019-08-19\n\n- Fix media source path being included for empty values [#152]\n- When context values are empty, it will now fall back to the global value\n\nClientConfig 2.1.0-pl\n---------------------\nReleased on 2018-12-05\n\n- Update menu to no longer rely on modAction, instead using namespace routing [#158, #139]\n- Fix image/file fields not refreshing when switching context [#147, #155]\n- Adjust plugin to accept both OnMODXInit and OnHandleRequest so you can change the event it runs on, if needed [#140]\n- Prevent events (i.e., priority) from being overwritten on upgrade [#148]\n\nClientConfig 2.0.0-pl\n---------------------\nReleased on 2018-06-26\n\n- Don\'t add _duplicate to the key when duplicating a setting [#142]\n- Updated German [#141], Russian [#145] and Dutch translations\n\nClientConfig 2.0.0-rc1\n----------------------\nReleased on 2017-10-04\n\n- ClientConfig can now (optionally) manage settings for different contexts [#4/#112]\n- Media fields (image/file) now prefix the media source url [#124]\n- Allow snippet/chunk tags in options for the dropdown field [#104]\n- Updated minimum requirements to PHP 5.5.0 and MODX 2.5.2.\n- Added separate clientconfig.categories lexicon for the vertical tabs interface [#91]\n\nClientConfig 1.4.2-pl\n---------------------\nReleased on 2017-07-22\n\n- Restore PHP 5.3 compatibility in creating settings. Note: next release will require 5.5+!\n- Fix issue saving settings on certain environments due to missing value for source [#129]\n- Fix incorrect header/container alignment in both manager pages [#128]\n- Fix (unused) namespace assets path (on new installs) [#126]\n\nClientConfig 1.4.1-pl\n---------------------\nReleased on 2017-02-02\n\n- Fix bug where the new source dropdown does not appear for image field types\n\nClientConfig 1.4.0-pl\n---------------------\nReleased on 2017-01-31\n\n- Fix loading of TinyMCE RTE, causing it to be initialised without configuration [#122]\n- Add ClientConfig_ConfigChange event to be able of hooking into configuration changes [#117]\n- Change plugin event from OnHandleRequest to OnMODXInit [#87, #109, #115]\n- Enable inline editing in the admin component [#94, #95, #114]\n- Fix field-required errors not being shown by adding a popup\n- Accept 0 as valid required value on the number input [#119]\n- Add a Password input type [#105]\n- Add a File input type [#36]\n- Don\'t show \"Error adding field\" errors during installation/upgrade [#92]\n- Fix loading RTE if the field key contains a dot [#89]\n- Add CMD/CTRL + S shortcut for saving the configuration [#80]\n- Preserve linebreaks when editing a setting in the admin section by using a textarea for the value [#69]\n- Relicense under the MIT license instead of GPL [#67]\n- Allow specifying a media source for the image input type [#66]\n\nClientConfig 1.3.2-pl\n---------------------\nReleased on 2015-12-09\n\n- Update French translation\n- Make sure image field uses the MODX default media source\n- Respect manager_date_format and manager_time_format settings\n\nClientConfig 1.3.1-pl\n---------------------\nReleased 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\nClientConfig 1.3.0-pl\n---------------------\nReleased 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\nClientConfig 1.2.1-pl\n---------------------\nReleased 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\nClientConfig 1.2.0-pl\n---------------------\nReleased 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\nClientConfig 1.1.2-pl\n---------------------\nReleased 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  for admins. (Thanks @fractalwolfe!)\n\nClientConfig 1.1.1-pl\n---------------------\nReleased 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\nClientConfig 1.1.0-pl\n---------------------\nReleased 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\nClientConfig 1.0.0-pl\n---------------------\nReleased on 2012-12-09\n\nFirst release\n\";s:13:\"setup-options\";s:39:\"clientconfig-2.3.1-pl/setup-options.php\";s:9:\"signature\";s:21:\"clientconfig-2.3.1-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:49:\"/workspace/package/install/clientconfig-2.3.1-pl/\";s:26:\"clientconfig_context_aware\";s:1:\"0\";s:14:\"package_action\";i:0;}',	'ClientConfig',	'a:38:{s:2:\"id\";s:24:\"62a8d34f1a814e6ac832bba2\";s:7:\"package\";s:24:\"50c3f87ef245542fc1000033\";s:12:\"display_name\";s:21:\"clientconfig-2.3.1-pl\";s:4:\"name\";s:12:\"ClientConfig\";s:7:\"version\";s:5:\"2.3.1\";s:13:\"version_major\";s:1:\"2\";s:13:\"version_minor\";s:1:\"3\";s:13:\"version_patch\";s:1:\"1\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:5:\"markh\";s:11:\"description\";s:824:\"ClientConfig gives your client a user-friendly interface for making site wide changes, while you as the administrator set up the different options available to the end-user.\n\n**New in ClientConfig 2.0: <a href=\"https://www.modmore.com/blog/2017/clientconfig-2-context-settings/\">context-aware settings</a>!**\n\nPossible uses include:\n\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- Manage theme/style settings\n\n<a href=\"https://github.com/modmore/ClientConfig\">Please report bugs and request features on Github</a>. Happy with ClientConfig? <a href=\"https://modmore.com/extras/clientconfig/donate/\">Support open source with a donation</a>.\";s:12:\"instructions\";s:537:\"<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. </p><p>You can use the values from the settings by using either the system setting tag syntax , or by using $modx->getOption(\'key\') in code. </p><p>For further information, <a href=\"https://docs.modmore.com/en/Open_Source/ClientConfig/index.html\" title=\"\" target=\"\">refer to the documentation</a>.</p>\";s:9:\"changelog\";s:230:\"Released on 2022-06-13\n\n- Fix \"Choose Context\" combobox not loading in MODX 3.x [#193]  \n- Fix double asterisks being displayed on required fields in MODX 3.x [#189]\n- Fix admin grids not resizing when browser is resized [#194]\n- \";s:9:\"createdon\";s:24:\"2022-06-14T18:28:31+0000\";s:9:\"createdby\";s:5:\"markh\";s:8:\"editedon\";s:24:\"2022-07-18T04:34:10+0000\";s:10:\"releasedon\";s:24:\"2022-06-14T18:28:31+0000\";s:9:\"downloads\";s:5:\"84351\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:3:\"MIT\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:3:\"2.7\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=62a8d34f1a814e6ac832bba3\";s:9:\"signature\";s:21:\"clientconfig-2.3.1-pl\";s:11:\"supports_db\";s:5:\"mysql\";s:16:\"minimum_supports\";s:3:\"2.7\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:77:\"http://modx.s3.amazonaws.com/extras/50c3f87ef245542fc1000033/clientconfig.jpg\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"62a8d34f1a814e6ac832bba3\";s:7:\"version\";s:24:\"62a8d34f1a814e6ac832bba2\";s:8:\"filename\";s:35:\"clientconfig-2.3.1-pl.transport.zip\";s:9:\"downloads\";s:4:\"1591\";s:6:\"lastip\";s:13:\"172.104.203.5\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=62a8d34f1a814e6ac832bba3\";}s:17:\"package-signature\";s:21:\"clientconfig-2.3.1-pl\";s:10:\"categories\";s:61:\"administration,administration,personalization,personalization\";s:4:\"tags\";s:30:\"setting,settings,configuration\";}',	2,	3,	1,	'pl',	0),
('console-2.2.2-pl',	'2022-03-21 08:39:41',	'2022-03-21 08:41:06',	'2022-03-21 08:41:06',	0,	1,	1,	0,	'console-2.2.2-pl.transport.zip',	NULL,	'a:8:{s:7:\"license\";s:0:\"\";s:6:\"readme\";s:134:\"Console\r\n=====================================================\r\n\r\nConsole allow to execute php-code at back-end by simple interface.\r\n\";s:9:\"changelog\";s:1312:\"Console-2.2.2-pl\r\n=============================================================\r\n- Fix lexicon\r\n- Fix menu\r\n\r\nConsole-2.2.1-beta\r\n=============================================================\r\n- Added return result\r\n\r\nConsole-2.2.0-beta\r\n=============================================================\r\n- Added execution report\r\n\r\nConsole-2.1.0-beta\r\n=============================================================\r\n- Added a feature to save the console code to file and load from file.\r\n- Added a feature to save the console code to snippet and load from snippet.\r\n\r\nConsole-2.0.3-beta\r\n=============================================================\r\n- Added recursive queries;\r\n\r\nConsole-2.0.2-beta\r\n=============================================================\r\n- Renew appearance;\r\n- Two variants of result (formated and raw)\r\n\r\nConsole-2.0.1-beta\r\n=============================================================\r\n- Saving code in $_SESSION;\r\n\r\nConsole-2.0.0-rc\r\n=============================================================\r\n- Ace integration fix;\r\n\r\nConsole-1.2.0-rc\r\n=============================================================\r\n- Set default LogTarget(\'HTML\');\r\n- Set default LogLevel(xPDO::LOG_LEVEL_DEBUG);\r\n\r\nConsole-1.1.0-rc\r\n=============================================================\r\n\r\n- First release\";s:9:\"signature\";s:16:\"console-2.2.2-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:44:\"/workspace/package/install/console-2.2.2-pl/\";s:14:\"package_action\";i:0;}',	'Console',	'a:38:{s:2:\"id\";s:24:\"588491c3bc8dd393108b4567\";s:7:\"package\";s:24:\"50f2c1d3f2455468e4000049\";s:12:\"display_name\";s:16:\"console-2.2.2-pl\";s:4:\"name\";s:7:\"Console\";s:7:\"version\";s:5:\"2.2.2\";s:13:\"version_major\";s:1:\"2\";s:13:\"version_minor\";s:1:\"2\";s:13:\"version_patch\";s:1:\"2\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:7:\"fi1osof\";s:11:\"description\";s:300:\"Console allow to execute php-code at back-end by simple interface.<p>GitHub project: <a href=\"https://github.com/Fi1osof/modx-console\">https://github.com/Fi1osof/modx-console</a></p><p>Feel free ask any question on <a href=\"https://modxclub.ru/\" title=\"\" target=\"\">https://modxclub.ru/</a></p><p></p>\";s:12:\"instructions\";s:22:\"<p>Initial content</p>\";s:9:\"changelog\";s:1534:\"<p>Console-2.2.2-pl</p><p>=============================================================</p><p>- Fix lexicon</p><p>- Fix menu</p><p></p><p>Console-2.2.1-beta</p><p>=============================================================</p><p>- Added return result</p><p></p><p>Console-2.2.0-beta</p><p>=============================================================</p><p>- Added execution report</p><p></p><p>Console-2.1.0-beta</p><p>=============================================================</p><p>- Added a feature to save the console code to file and load from file.</p><p>- Added a feature to save the console code to snippet and load from snippet.</p><p></p><p>Console-2.0.3-beta</p><p>=============================================================</p><p>- Added recursive queries;</p><p></p><p>Console-2.0.2-beta</p><p>=============================================================</p><p>- Renew appearance;</p><p>- Two variants of result (formated and raw)</p><p></p><p>Console-2.0.1-beta</p><p>=============================================================</p><p>- Saving code in $_SESSION;</p><p></p><p>Console-2.0.0-rc</p><p>=============================================================</p><p>- Ace integration fix;</p><p></p><p>Console-1.2.0-rc</p><p>=============================================================</p><p>- Set default LogTarget(\'HTML\');</p><p>- Set default LogLevel(xPDO::LOG_LEVEL_DEBUG);</p><p></p><p>Console-1.1.0-rc</p><p>=============================================================</p><p></p><p>- First release</p>\";s:9:\"createdon\";s:24:\"2017-01-22T11:04:35+0000\";s:9:\"createdby\";s:7:\"fi1osof\";s:8:\"editedon\";s:24:\"2022-03-21T08:30:22+0000\";s:10:\"releasedon\";s:24:\"2017-02-03T08:54:24+0000\";s:9:\"downloads\";s:5:\"52662\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:3:\"2.2\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=5c3ce353bc8dd3d8358b4567\";s:9:\"signature\";s:16:\"console-2.2.2-pl\";s:11:\"supports_db\";s:12:\"mysql,sqlsrv\";s:16:\"minimum_supports\";s:3:\"2.2\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:67:\"http://modx.s3.amazonaws.com/extras/50f2c1d3f2455468e4000049/14.jpg\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"5c3ce353bc8dd3d8358b4567\";s:7:\"version\";s:24:\"588491c3bc8dd393108b4567\";s:8:\"filename\";s:30:\"console-2.2.2-pl.transport.zip\";s:9:\"downloads\";s:5:\"19758\";s:6:\"lastip\";s:14:\"193.168.46.244\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=5c3ce353bc8dd3d8358b4567\";}s:17:\"package-signature\";s:16:\"console-2.2.2-pl\";s:10:\"categories\";s:29:\"administration,administration\";s:4:\"tags\";s:0:\"\";}',	2,	2,	2,	'pl',	0),
('controlerrorlog-1.4.6-pl',	'2022-07-02 11:11:22',	'2022-07-02 11:11:28',	'2022-07-02 11:11:28',	0,	1,	1,	0,	'controlerrorlog-1.4.6-pl.transport.zip',	NULL,	'a:10:{s:9:\"changelog\";s:2652:\"Changelog for controlErrorLog.\r\n\r\n1.4.6-pl\r\n==============\r\n- Fixed a bug with the incorrect Smarty compilation path (#31).\r\n\r\n1.4.5-pl\r\n==============\r\n- Fixed a bug with updating the ControlErrorlog icon.\r\n- Fixed parsing for fatal errors.\r\n\r\n1.4.4-pl\r\n==============\r\n- Removed the definition of the compilation path for Smarty.\r\n\r\n1.4.3-pl\r\n==============\r\n- Fixed hashing of missing log file.\r\n- Optimized for MODX 3.\r\n\r\n1.4.2-pl\r\n==============\r\n- Added check for user menu existence (#27).\r\n\r\n1.4.1-beta\r\n==============\r\n- Added system setting \"enable\" to manage controlErrorLog in the backend.\r\n- Fixed a bug with the too large mode.\r\n- Return back PHP5 support.\r\n\r\n1.4.0-beta\r\n==============\r\n- Added the ability to format the error log content.\r\n- Changed the \"control_frontend\" system setting behavior. Now it\'s responsible for displaying the error log on the frontend (useful in development mode).\r\n\r\n1.3.1-pl\r\n==============\r\n- Added closing the window by clicking on the icon.\r\n\r\n1.3.0-pl\r\n==============\r\n- Added the ability to control copies of the error log.\r\n\r\n1.2.1-pl\r\n==============\r\n- Moved \"Make a copy\" button to the left (PR #16).\r\n\r\n1.2.0-pl\r\n==============\r\n- Added a button \"Make a copy\" which makes a copy of the error log with current timestamp in the name.\r\n- Changed the admin notification event from \"OnHandleRequest\" to \"OnWebPageComplete\".\r\n\r\n1.1.3-pl\r\n==============\r\n- Fixed a bug which occurs when the error log is bigger then allowed memory size (#14).\r\n\r\n1.1.2-pl\r\n==============\r\n- Code optimization.\r\n- Added cron script for checking the error log (core/components/controlerrorlog/cron/checkerrorlog.php).\r\n\r\n1.1.1-pl\r\n==============\r\n- Updated the Dutch lexicon.\r\n\r\n1.1.0-pl\r\n==============\r\n- Added control of the error log in the frontend of the site and admin notification.\r\n\r\n1.0.5-pl\r\n==============\r\n- Fixed bug with lexicon strings with some CMPs (#6)\r\n\r\n1.0.4-pl\r\n==============\r\n- Fixed the error #5.\r\n\r\n1.0.3-pl\r\n==============\r\n- Now the error log is checked for errors every minute (by default). It can be switched off.\r\n- Add a system setting \"Last lines\".\r\n- Add a system setting \"Refresh frequency\".\r\n- Add a system setting \"Auto refresh\".\r\n- Some improvements - now the window closes with animation, refreshing the error log on opening the window.\r\n\r\n1.0.2-pl\r\n==============\r\n- Removed the table creation script.\r\n\r\n1.0.1-pl\r\n==============\r\n- Changed the appearance of the error indicator.\r\n- Now the error indicator is displayed only for users with permission \"error_log_view\".\r\n- Removed Error Log button.\r\n- Added language support for Dutch.\r\n\r\n1.0.0-pl\r\n==============\r\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:351:\"--------------------\ncontrolErrorLog\n--------------------\nAuthor: Sergey Shlokov <sergant210@bk.ru>\n--------------------\n\nThis Extra adds a new feature to manager interface - the ability to control the error log and view it in a popup window.\n\nFeel free to suggest ideas/improvements/bugs on GitHub:\nhttp://github.com/sergant210/controlErrorLog/issues\";s:6:\"chunks\";a:1:{s:17:\"errorLogPanel.tpl\";s:744:\"<div id=\"side-panel-wrapper\">\r\n	<ul class=\"side-buttons\">\r\n		<li class=\"side-buttons-item\"><span id=\"side-button-open\" class=\"celicon-check-circle\"><i class=\"celicon\"></i></span></li>\r\n		<li class=\"side-buttons-item\"><span id=\"side-button-refresh\" class=\"celicon-refresh\"><i class=\"celicon\"></i></span></li>\r\n		<li class=\"side-buttons-item\"><span id=\"side-button-clear\" class=\"celicon-trash disabled\"><i class=\"celicon\"></i></span></li>\r\n	</ul>\r\n	<div class=\"side-panel\">\r\n		<div class=\"side-panel-header\">\r\n			<span>[[%error_log]]</span>\r\n			<span id=\"side-panel-close-button\">&times;</span>\r\n		</div>\r\n		<div class=\"side-panel-body\"></div>\r\n		<div class=\"side-panel-footer\" data-records=\"[[%errorlog_total_messages]]\"> </div>\r\n	</div>\r\n</div>\";}s:13:\"setup-options\";s:42:\"controlerrorlog-1.4.6-pl/setup-options.php\";s:9:\"signature\";s:24:\"controlerrorlog-1.4.6-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:52:\"/workspace/package/install/controlerrorlog-1.4.6-pl/\";s:14:\"package_action\";i:0;}',	'controlErrorLog',	'a:38:{s:2:\"id\";s:24:\"61ec197df1356d1341258512\";s:7:\"package\";s:24:\"55b755a4dc532f69510da2ef\";s:12:\"display_name\";s:24:\"controlerrorlog-1.4.6-pl\";s:4:\"name\";s:15:\"controlErrorLog\";s:7:\"version\";s:5:\"1.4.6\";s:13:\"version_major\";s:1:\"1\";s:13:\"version_minor\";s:1:\"4\";s:13:\"version_patch\";s:1:\"6\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:10:\"sergant210\";s:11:\"description\";s:1629:\"Now you will not miss any errors. If the log is too large you will see a certain number of the last lines you have specified in the system setting \"Last lines\" (thanks Bob Ray for the idea). By default, 15.\n\n### Error log on the frontend\nIt\'s very useful in development mode. It\'s available only for users with the \"error_log_view\" permission.\n\n### System settings\n* **admin_email** - Admin email to notify about changes in the error log. If empty the notification would not work.  \n* **allow_copy_deletion** - Allow to delete copies of the error log instead of clearing them.  \n* **auto_refresh** - Check the state of the error log with the specified frequency.  \n* **control_frontend** - If true the error log will be shown on the frontend.   \n* **date_format** - Date format in the strftime function style.  \n* **format_output** - Displays error log in formatted form.  \n* **last_lines** - Displays the specified number of last lines when the error log is too large to display.     \n* **refresh_freq** - Error log refresh frequency in seconds. By default, set to 60 seconds.  \n* **tpl** - Smarty template for displaying messages from the error log.  \n* **css_file** - URL of a css file for the frontend.  \n* **js_file** - URL of a javascript file for the frontend.\n\n### Cron task\nUse the script _core/components/controlerrorlog/cron/checkerrorlog.php_ to check the error log for new errors.\n\n<b>Important! </b>The error indicator in the manager interface is displayed only for administrators (sudo) and users with permission \"error_log_view\".\n\nSee details on <a href=\"https://github.com/sergant210/controlErrorLog\">Github</a>.\";s:12:\"instructions\";s:37:\"<p>Install via Package Management</p>\";s:9:\"changelog\";s:2725:\"1.4.6-pl\n-----------\n- Fixed a bug with the incorrect Smarty compilation path (#31).\n\n1.4.5-pl\n-----------\n- Fixed a bug with updating the ControlErrorlog icon.\n- Fixed parsing for fatal errors.\n\n1.4.4-pl\n-----------\n- Removed the definition of the compilation path for Smarty.\n\n1.4.3-pl\n-----------\n- Fixed hashing of missing log file.\n- Optimized for MODX 3.\n\n1.4.2-pl\n-----------\n- Added check for user menu existence (#27).\n\n1.4.1-beta  \n---------------------------\n- Added system setting \"enable\" to manage controlErrorLog in the backend.  \n- Fixed a bug with the too large mode.  \n- Return back PHP5 support.\n\n1.4.0-beta\n---------------------------\n- Added the ability to format the error log content.  \n- Now the \"control_frontend\" system setting is responsible for displaying the error log on the frontend (useful for development mode).\n\n1.3.1-pl  \n---------------------------\n- Added closing the window by clicking on the icon.\n\n1.3.0-pl\n---------------------------\n- Added the ability to control copies of the error log.\n\n1.2.1-pl\n---------------------------\n- Moved the \"Make a copy\"  button to the left.\n\n1.2.0-pl\n---------------------------\n- Added a button \"Make a copy\" which makes a copy of the error log with current timestamp in the name.\n- Changed the admin notification event from \"OnHandleRequest\" to \"OnWebPageComplete\".\n\n1.1.3-pl\n---------------------------\n- Fixed bug which occurs when the error log is bigger then allowed memory size [#14].\n\n1.1.2-pl\n---------------------------\n- Code optimization.\n- Added cron script for checking the error log (core/components/controlerrorlog/cron/checkerrorlog.php).\n\n1.1.1-pl\n---------------------------\n- Updated the Dutch lexicon.\n\n1.1.0-pl\n---------------------------\n- Added control of the error log in the frontend of the site and admin notification.\n\n1.0.5-pl\n---------------------------\n- Fixed bug with lexicon strings with some CMPs (#6)\n\n1.0.4-pl\n---------------------------\n- Fixed the bug #5.\n\n1.0.3-pl\n---------------------------\n- Now the error log is checked for errors every minute (by default). It can be switched off.\n- Add a system setting \"Last lines\".\n- Add a system setting \"Refresh frequency\".\n- Add a system setting \"Auto refresh\".\n- Some improvements - now the window closes with animation, refreshing the error log on opening the window.\n\n1.0.2-pl\n---------------------------\n- Removed the table creation script.\n\n1.0.1-pl\n---------------------------\n- Changed the appearance of the error indicator (Icons instead of text).\n- Now the error indicator is displayed only for users with permission \"error_log_view\".\n- Removed \"Error Log\" button.\n- Added language support for Dutch.\n\n1.0.0-pl\n---------------------------\n- Initial release.\";s:9:\"createdon\";s:24:\"2022-01-22T14:49:33+0000\";s:9:\"createdby\";s:10:\"sergant210\";s:8:\"editedon\";s:24:\"2022-07-02T09:43:02+0000\";s:10:\"releasedon\";s:24:\"2022-01-22T14:49:33+0000\";s:9:\"downloads\";s:5:\"19282\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:1:\"2\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=61ec197df1356d1341258513\";s:9:\"signature\";s:24:\"controlerrorlog-1.4.6-pl\";s:11:\"supports_db\";s:5:\"mysql\";s:16:\"minimum_supports\";s:1:\"2\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:77:\"http://modx.s3.amazonaws.com/extras/55b755a4dc532f69510da2ef/errorlog10en.jpg\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"61ec197df1356d1341258513\";s:7:\"version\";s:24:\"61ec197df1356d1341258512\";s:8:\"filename\";s:38:\"controlerrorlog-1.4.6-pl.transport.zip\";s:9:\"downloads\";s:4:\"1135\";s:6:\"lastip\";s:12:\"185.3.216.96\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=61ec197df1356d1341258513\";}s:17:\"package-signature\";s:24:\"controlerrorlog-1.4.6-pl\";s:10:\"categories\";s:14:\"administration\";s:4:\"tags\";s:12:\"errorlog,log\";}',	1,	4,	6,	'pl',	0),
('dbadmin-1.1.3-pl',	'2023-12-17 22:19:15',	'2023-12-17 22:19:16',	NULL,	0,	1,	0,	0,	'dbadmin-1.1.3-pl.transport.zip',	NULL,	'a:4:{s:9:\"changelog\";s:1163:\"1.1.3-pl\n==============\n- Added the horizontal scrolling for a table window.\n- Added output type - var_export or print_r.\n- Added syntax highlighting for sql.\n- Now, instead of the \"query error\", a full description of the error is displayed.\n\n1.1.2-pl\n==============\n- Changed file name format of database backup to \"database_date_time.sql\". For example, \"modx_20160317_090155.sql\".\n\n1.1.1-pl\n==============\n- Fixed some bugs.\n- Add support of PHP 5.3.\n\n1.1.0-pl\n==============\n- Added the ability to edit the selected cell in tables with a class or remove entire row.\n- Auto-update the list of tables.\n- Added Magic button to define a class for table.\n- Added \'Select from\' button to the tables grid that adds \'Select from\' script for selected table to the SQL query editor.\n\n1.0.1-pl\n==============\n- Fixed the error of checking update (wrong package name).\n- Added autocreation a folder for export operation.\n- Added the table access_namespace for MODX 2.4.0.\n\n1.0.0-pl\n==============\n- Fixed the error of renaming table.\n- Auto synchronization instead of the button.\n- Added a \"need update\" marker (by experiment).\n\n1.0.0-beta\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:274:\"--------------------\ndbAdmin\n--------------------\nAuthor: Sergey Shlokov <sergant210@bk.ru>\n--------------------\n\nA MODx Revolution Extra for database tables administration.\n\nFeel free to suggest ideas/improvements/bugs on GitHub:\nhttp://github.com/sergant210/dbAdmin/issues\";s:13:\"setup-options\";s:34:\"dbadmin-1.1.3-pl/setup-options.php\";}',	'dbadmin',	NULL,	1,	1,	3,	'pl',	0),
('formit-4.2.7-pl',	'2022-07-07 07:52:33',	'2022-07-07 07:52:43',	'2022-07-07 07:52:43',	0,	1,	1,	0,	'formit-4.2.7-pl.transport.zip',	NULL,	'a:11:{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:201:\"--------------------\nSnippet: FormIt\n--------------------\nAuthor: Sterc <modx@sterc.nl>\n\nA form processing Snippet for MODx Revolution.\n\nOfficial Documentation:\nhttps://docs.modx.com/extras/revo/formit\";s:9:\"changelog\";s:19299:\"Changelog for FormIt.\n\nFormIt 4.2.7\n====================================\n- Use server_offset_time for grid in manager (PR#219)\n- Fix fatal error when empty responce in cronjob (PR#230)\n- Add RU (PR#245) and IT (PR#257) translation of country list\n- Change stopforumspam API URL (PR#248)\n- Fix property for getTableName in resolver (PR#247)\n\nFormIt 4.2.6\n====================================\n- Add support for UTF-8 when exporting (PR#221)\n- Move limit from foreach to query in migration class (PR#236)\n- Remove unnecessary mail->reset from autoresponder hook (PR#240)\n- Add Ukrainian lexicon + some changes to RU and EN lexicons (PR#242)\n- Update Composer autoloader for newer Composer versions (PR#243)\n\nFormIt 4.2.5\n====================================\n- Added new properties to email hook (#229, thanks to @jako)\n- emailSelectTo, emailSelectToName, emailSelectField\n\nFormIt 4.2.4\n====================================\n- Fix export form select width (#218)\n- Fix limit of form filter (#206)\n- Fix path to clean processor for cronjob (#215, thanks to @bennyb)\n- Fix ability to export all forms (#210, thanks to @JoshuaLuckers)\n- Fix PHP notice \'Only variables should be assigned by reference\' in Hook.php (#212, thanks to @intersel)\n- Updated Russian translation (#208, thanks to @webinmd)\n\nFormIt 4.2.3\n====================================\n- FormIt 4.2.0 release bug - Fix migration of forms with encryption\n\nFormIt 4.2.2\n====================================\n- FormIt 4.2.0 release bug - Altering tables on update (#203)\n\nFormIt 4.2.1\n====================================\n- FormIt 4.2.0 release bug (#202)\n\nFormIt 4.2.0\n====================================\n- Bug on hasHook() fixed (#182, #181, #170, #193)\n- ExtJS refactored for faster and better UI/UX\n- IP number added to the grid (#194)\n- Better form view with textfields and textareas (#136)\n- Remove multiple forms (#143)\n- Search by IP (and context menu option to view all forms from 1 IP)\n- New permissions added\n- formit_encryptions to encrypt/decrypt forms\n- Context awereness, an user can only see the forms with the contexts that the user has access to.\n- Swedish translation updated\n- All other language files checked and filled with English strings\n- Formit deprecation notice in 2.7.0dev bug fixed (#190)\n\nFormIt 4.1.2\n====================================\n- Fix spam hook for better spam prevention thanks to Kristoffer Karlström\n- Fix FormItLoadSavedForm for encrypted forms\n\nFormIt 4.1.1\n====================================\n- Added new hook \"renderHooks\", which triggers just before rendering the form\n\nFormIt 4.1.0\n====================================\n- This release is made possible thanks to Bert Kooij / Census.nl. Thanks!\n- Added new button in Manager page for manually removing forms.\n- Added new system setting for the default amount of days.\n- Added cronjob task for automatically deletion of old forms.\n\nFormIt 4.0.1\n====================================\n- Add option to specify csv delimiter for form export\n- Add GDPR compliant attachment handling (#154) - Thanks to @wax100\n- Allow empty isDate validator (PR#164) - Thanks to JoshuaLuckers\n- Fix bug with multiple forms on one page (#160)\n- Fix modx->log calls in various classes (#161)\n- Fix setting redirectParams variable (#165)\n\nFormIt 4.0.0\n====================================\n- Move formit base classes to /src/ folder and add namespace\n- Update existing classes to extend new classes\n- Update all snippets to use modx getService\n- Move FormItAutoResponder and FormItSaveForm logic to classes\n- Add helper functions for all FormIt properties\n- Set defaultEngine to InnoDB in mysql schema\n- Fix PHP7 error in default email output (PR#156)\n- Updated German lexicons (PR#150)\n- Add \'Form\' column to form export (PR#149)\n\nFormIt 3.0.4\n====================================\n- Fix checkbox values not showing in email\n\nFormIt 3.0.3\n====================================\n- Fix FormItSaveForm to allow multiple fields with same fieldName\n- Add \'saveTmpFiles\' FormIt snippet property to enable/disable saving files to tmp directory\n- Remove list() function from formitsaveform snippet for better PHP version compatibility (#98)\n- Fix PHP7 by-reference errors (#98)\n- Replace ereg() functions with preg_match() for PHP compatibility (#98)\n- Increase precision for FormItForm \'ip\' field to allow for IPV6 addresses (#135)\n- Fix issue where in some cases fields are not correctly saved in FormItForm (#92)\n- Optimize FormItForm export class for better performance (#120)\n- Add \'attachFilesToEmail\' property to control if files are added as attachment to email (#122)\n\nFormIt 3.0.2\n====================================\n- Fix encryption in formitsaveform snippet to save correct encryption_type\n- Fix bug in forms grid when decrypting encrypted forms fail\n- Fix migration to check if decrypted data is correct\n\nFormIt 3.0.1\n====================================\n- Store file uploads in tmp folder to prevent file uploads getting lost in multistep forms\n- Add checks for OpenSSL in classes and encryption CMP tab\n- Add method_exists check to plugin to prevent errors when method not exists\n- Update context-menu in forms-encryption grid to show only encrypt or decrypt\n- Set placeholders for file upload $_FILES array\n- Add option to FormItCountryOptions snippet to limit country list to selected countries only (PR#123) - thanks to gadgetto\n\nFormIt 3.0.0\n====================================\n- PLEASE NOTE: THIS UPDATE CONTAINS A MIGRATION SCRIPT FOR ENCRYPTED FORMS - Read more about it at https://github.com/Sterc/FormIt\n- Mcrypt encryption/decryption methods replaced with openssl due to mcrypt being deprecated in PHP 7.1\n- Add default file-based chunks as objects\n- Add support for pdoTools getChunk method, thanks to soulcreate and bezumkin (PR#89)\n- Add French countries for FormItCountryOptions, thanks to beau-gosse (PR#109)\n- Add Dutch countries for FormItCountryOptions, thanks to visvoer (PR#110)\n- Add extjs stateful parameters to CMP tabs\n\nFormIt 2.2.11\n====================================\n- Added storeLocation property to FormIt and FormItRetriever. (issue #95, PR #105#106#107)\n- Changed default behaviour of emailReplyTo parameter to fallback to email field in form (issue #101)\n- Changed math hook to store values in session, preventing easy bypass of math hook (issue #64)\n- Add GPM config\n- Fix bug with multiple file upload (PR #104)\n- Add \'hash\' field to FormItSaveForm to allow updating of previously saved forms (PR #94)\n- Add FormItLoadSavedForm snippet to retrieve saved forms (PR #94)\n- Fix for export with datefilter (issue #96, PR #97)\n- Add fiarRequired property (PR#83)\n- Update resolver to check for current version to prevent errors on upgrade\n- Add system setting for form_encryptkey, to not rely on site_id (issue #68)\n- Fix saved forms export when using encrypted forms (issue #48)\n\nFormIt 2.2.10\n====================================\n- Merged PR#58: Added BOM for Excel to understand UTF-8 non-latin symbols properly. (thanks to govza)\n- Merged PR#73: JSON output options for errors and hooks\n- Merged PR#79: Create German lexicon for FormIt-CMP (thanks to sebastian-marinescu)\n\nFormIt 2.2.9\n====================================\n- Merging PR#74 from Jako which solves multiple issues.\n- Fix XSS vulnerabilities\n- Javascript code cleanup\n- Fix empty math operator after form submission #d782c29\n\nFormIt 2.2.8\n====================================\n- Fixed export limit and added form dropdown paging #60\n- Fixed typo property lexicons #57\n- Added templates path to config #63\n- Added loading lexicons in ficountryoptions class #21\n- Added ability to dynamically set formName by setting placeholder inside formName equal to an existing form field key #45\n\nFormIt 2.2.7\n====================================\n- Optimised export\n\nFormIt 2.2.6\n====================================\n- Fixed empty placeholder for file field in autoresponder\n\nFormIt 2.2.5\n====================================\n- Fixed creating table on update\n- Added new tab inside CMP for managing encryption\n- Added missing br on auto emailTpl\n\nFormIt 2.2.4\n====================================\n- Fixed bug inside FormItSaveForm and PR #43\n\nFormIt 2.2.3\n====================================\n- Added encryption to saved forms\n- Added formname to grid\n- Saved form is now returned from the hook\n- Export unlimited items\n- Add RU translation\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:13:\"setup-options\";s:33:\"formit-4.2.7-pl/setup-options.php\";s:9:\"signature\";s:15:\"formit-4.2.7-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:43:\"/workspace/package/install/formit-4.2.7-pl/\";s:9:\"user_name\";s:0:\"\";s:10:\"user_email\";s:0:\"\";s:14:\"package_action\";i:1;}',	'FormIt',	'a:38:{s:2:\"id\";s:24:\"61a5b3b1c67f2f6c7b435ba2\";s:7:\"package\";s:24:\"4d556c62b2b083396d000b9c\";s:12:\"display_name\";s:15:\"formit-4.2.7-pl\";s:4:\"name\";s:6:\"FormIt\";s:7:\"version\";s:5:\"4.2.7\";s:13:\"version_major\";s:1:\"4\";s:13:\"version_minor\";s:1:\"2\";s:13:\"version_patch\";s:1:\"7\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:1:\"0\";s:6:\"author\";s:5:\"sterc\";s:11:\"description\";s:1367:\"<p>FormIt is a dynamic form processing Snippet for MODX Revolution. It handles form creation, submission, performing validation and followup actions like sending an email and auto replies. Key features:</p><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 and encrypted 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><li>GDPR compliant</li></ul><p></p>\n<p>Official documentation here: <a href=\"http://rtfm.modx.com/display/ADDON/FormIt\" style=\"line-height: 1.5;\">http://rtfm.modx.com/display/ADDON/FormIt</a></p>\n\n**Free Extra**  \nThis is a free extra and the code is publicly available for you to change. The extra is being actively maintained and you\'re free to put in pull requests which match our roadmap. Please create an issue if the pull request differs from the roadmap so we can make sure we\'re on the same page.\n\nNeed help? <a href=\"mailto:service@sterc.com\">Approach our support desk for paid premium support.</a>\";s:12:\"instructions\";s:508:\"<p>Install via Package Management.</p><p><b>Updating to 3.0?</b></p><p>We\'ve released FormIt 3.0 in order to avoid issues with Mcrypt in the near future, since it will be deprecated in PHP 7.2. Mcrypt has therefore been replaced by OpenSSL encryption.</p><p>After updating to 3.0.0, you should refresh the page and notice a red bar on the top of your manager. From there, you can initiate the migration process, which will decrypt your saved forms using Mcrypt and immediately encrypt them using OpenSSL.</p>\";s:9:\"changelog\";s:19298:\"Changelog for FormIt.\n\nFormIt 4.2.7\n====================================\n- Use server_offset_time for grid in manager (PR#219)\n- Fix fatal error when empty responce in cronjob (PR#230)\n- Add RU (PR#245) and IT (PR#257) translation of country list\n- Change stopforumspam API URL (PR#248)\n- Fix property for getTableName in resolver (PR#247)\n\nFormIt 4.2.6\n====================================\n- Add support for UTF-8 when exporting (PR#221)\n- Move limit from foreach to query in migration class (PR#236)\n- Remove unnecessary mail->reset from autoresponder hook (PR#240)\n- Add Ukrainian lexicon + some changes to RU and EN lexicons (PR#242)\n- Update Composer autoloader for newer Composer versions (PR#243)\n\nFormIt 4.2.5\n====================================\n- Added new properties to email hook (#229, thanks to @jako)\n- emailSelectTo, emailSelectToName, emailSelectField\n\nFormIt 4.2.4\n====================================\n- Fix export form select width (#218)\n- Fix limit of form filter (#206)\n- Fix path to clean processor for cronjob (#215, thanks to @bennyb)\n- Fix ability to export all forms (#210, thanks to @JoshuaLuckers)\n- Fix PHP notice \'Only variables should be assigned by reference\' in Hook.php (#212, thanks to @intersel)\n- Updated Russian translation (#208, thanks to @webinmd)\n\nFormIt 4.2.3\n====================================\n- FormIt 4.2.0 release bug - Fix migration of forms with encryption\n\nFormIt 4.2.2\n====================================\n- FormIt 4.2.0 release bug - Altering tables on update (#203)\n\nFormIt 4.2.1\n====================================\n- FormIt 4.2.0 release bug (#202)\n\nFormIt 4.2.0\n====================================\n- Bug on hasHook() fixed (#182, #181, #170, #193)\n- ExtJS refactored for faster and better UI/UX\n- IP number added to the grid (#194)\n- Better form view with textfields and textareas (#136)\n- Remove multiple forms (#143)\n- Search by IP (and context menu option to view all forms from 1 IP)\n- New permissions added\n- formit_encryptions to encrypt/decrypt forms\n- Context awereness, an user can only see the forms with the contexts that the user has access to.\n- Swedish translation updated\n- All other language files checked and filled with English strings\n- Formit deprecation notice in 2.7.0dev bug fixed (#190)\n\nFormIt 4.1.2\n====================================\n- Fix spam hook for better spam prevention thanks to Kristoffer Karlström\n- Fix FormItLoadSavedForm for encrypted forms\n\nFormIt 4.1.1\n====================================\n- Added new hook \"renderHooks\", which triggers just before rendering the form\n\nFormIt 4.1.0\n====================================\n- This release is made possible thanks to Bert Kooij / Census.nl. Thanks!\n- Added new button in Manager page for manually removing forms.\n- Added new system setting for the default amount of days.\n- Added cronjob task for automatically deletion of old forms.\n\nFormIt 4.0.1\n====================================\n- Add option to specify csv delimiter for form export\n- Add GDPR compliant attachment handling (#154) - Thanks to @wax100\n- Allow empty isDate validator (PR#164) - Thanks to JoshuaLuckers\n- Fix bug with multiple forms on one page (#160)\n- Fix modx->log calls in various classes (#161)\n- Fix setting redirectParams variable (#165)\n\nFormIt 4.0.0\n====================================\n- Move formit base classes to /src/ folder and add namespace\n- Update existing classes to extend new classes\n- Update all snippets to use modx getService\n- Move FormItAutoResponder and FormItSaveForm logic to classes\n- Add helper functions for all FormIt properties\n- Set defaultEngine to InnoDB in mysql schema\n- Fix PHP7 error in default email output (PR#156)\n- Updated German lexicons (PR#150)\n- Add \'Form\' column to form export (PR#149)\n\nFormIt 3.0.4\n====================================\n- Fix checkbox values not showing in email\n\nFormIt 3.0.3\n====================================\n- Fix FormItSaveForm to allow multiple fields with same fieldName\n- Add \'saveTmpFiles\' FormIt snippet property to enable/disable saving files to tmp directory\n- Remove list() function from formitsaveform snippet for better PHP version compatibility (#98)\n- Fix PHP7 by-reference errors (#98)\n- Replace ereg() functions with preg_match() for PHP compatibility (#98)\n- Increase precision for FormItForm \'ip\' field to allow for IPV6 addresses (#135)\n- Fix issue where in some cases fields are not correctly saved in FormItForm (#92)\n- Optimize FormItForm export class for better performance (#120)\n- Add \'attachFilesToEmail\' property to control if files are added as attachment to email (#122)\n\nFormIt 3.0.2\n====================================\n- Fix encryption in formitsaveform snippet to save correct encryption_type\n- Fix bug in forms grid when decrypting encrypted forms fail\n- Fix migration to check if decrypted data is correct\n\nFormIt 3.0.1\n====================================\n- Store file uploads in tmp folder to prevent file uploads getting lost in multistep forms\n- Add checks for OpenSSL in classes and encryption CMP tab\n- Add method_exists check to plugin to prevent errors when method not exists\n- Update context-menu in forms-encryption grid to show only encrypt or decrypt\n- Set placeholders for file upload $_FILES array\n- Add option to FormItCountryOptions snippet to limit country list to selected countries only (PR#123) - thanks to gadgetto\n\nFormIt 3.0.0\n====================================\n- PLEASE NOTE: THIS UPDATE CONTAINS A MIGRATION SCRIPT FOR ENCRYPTED FORMS - Read more about it at https://github.com/Sterc/FormIt\n- Mcrypt encryption/decryption methods replaced with openssl due to mcrypt being deprecated in PHP 7.1\n- Add default file-based chunks as objects\n- Add support for pdoTools getChunk method, thanks to soulcreate and bezumkin (PR#89)\n- Add French countries for FormItCountryOptions, thanks to beau-gosse (PR#109)\n- Add Dutch countries for FormItCountryOptions, thanks to visvoer (PR#110)\n- Add extjs stateful parameters to CMP tabs\n\nFormIt 2.2.11\n====================================\n- Added storeLocation property to FormIt and FormItRetriever. (issue #95, PR #105#106#107)\n- Changed default behaviour of emailReplyTo parameter to fallback to email field in form (issue #101)\n- Changed math hook to store values in session, preventing easy bypass of math hook (issue #64)\n- Add GPM config\n- Fix bug with multiple file upload (PR #104)\n- Add \'hash\' field to FormItSaveForm to allow updating of previously saved forms (PR #94)\n- Add FormItLoadSavedForm snippet to retrieve saved forms (PR #94)\n- Fix for export with datefilter (issue #96, PR #97)\n- Add fiarRequired property (PR#83)\n- Update resolver to check for current version to prevent errors on upgrade\n- Add system setting for form_encryptkey, to not rely on site_id (issue #68)\n- Fix saved forms export when using encrypted forms (issue #48)\n\nFormIt 2.2.10\n====================================\n- Merged PR#58: Added BOM for Excel to understand UTF-8 non-latin symbols properly. (thanks to govza)\n- Merged PR#73: JSON output options for errors and hooks\n- Merged PR#79: Create German lexicon for FormIt-CMP (thanks to sebastian-marinescu)\n\nFormIt 2.2.9\n====================================\n- Merging PR#74 from Jako which solves multiple issues.\n- Fix XSS vulnerabilities\n- Javascript code cleanup\n- Fix empty math operator after form submission #d782c29\n\nFormIt 2.2.8\n====================================\n- Fixed export limit and added form dropdown paging #60\n- Fixed typo property lexicons #57\n- Added templates path to config #63\n- Added loading lexicons in ficountryoptions class #21\n- Added ability to dynamically set formName by setting placeholder inside formName equal to an existing form field key #45\n\nFormIt 2.2.7\n====================================\n- Optimised export\n\nFormIt 2.2.6\n====================================\n- Fixed empty placeholder for file field in autoresponder\n\nFormIt 2.2.5\n====================================\n- Fixed creating table on update\n- Added new tab inside CMP for managing encryption\n- Added missing br on auto emailTpl\n\nFormIt 2.2.4\n====================================\n- Fixed bug inside FormItSaveForm and PR #43\n\nFormIt 2.2.3\n====================================\n- Added encryption to saved forms\n- Added formname to grid\n- Saved form is now returned from the hook\n- Export unlimited items\n- Add RU translation\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\";s:9:\"createdon\";s:24:\"2021-11-30T05:16:33+0000\";s:9:\"createdby\";s:5:\"sterc\";s:8:\"editedon\";s:24:\"2022-07-07T07:52:15+0000\";s:10:\"releasedon\";s:24:\"2021-11-30T05:16:33+0000\";s:9:\"downloads\";s:6:\"544517\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:4:\"true\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:1:\"2\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=61a5b3b1c67f2f6c7b435ba3\";s:9:\"signature\";s:15:\"formit-4.2.7-pl\";s:11:\"supports_db\";s:5:\"mysql\";s:16:\"minimum_supports\";s:1:\"2\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:77:\"http://modx.s3.amazonaws.com/extras/4d556c62b2b083396d000b9c/ss-formit-01.png\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"61a5b3b1c67f2f6c7b435ba3\";s:7:\"version\";s:24:\"61a5b3b1c67f2f6c7b435ba2\";s:8:\"filename\";s:29:\"formit-4.2.7-pl.transport.zip\";s:9:\"downloads\";s:5:\"16139\";s:6:\"lastip\";s:14:\"85.128.143.128\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=61a5b3b1c67f2f6c7b435ba3\";}s:17:\"package-signature\";s:15:\"formit-4.2.7-pl\";s:10:\"categories\";s:5:\"forms\";s:4:\"tags\";s:0:\"\";}',	4,	2,	7,	'pl',	0),
('gallery-2.0.0-pl',	'2022-06-27 00:29:04',	'2022-06-26 22:30:18',	'2022-06-27 00:30:18',	0,	1,	1,	0,	'gallery-2.0.0-pl.transport.zip',	NULL,	'a:9:{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:292:\"--------------------\n3PC: Gallery\n--------------------\nVersion: 0.1.0\nSince: June 4th, 2010\nAuthor: Shaun McCormick <shaun@modx.com>\n\n--------------------\n\nA Gallery system for your photos.\n\nFeel free to suggest ideas/improvements/bugs on GitHub:\nhttp://github.com/splittingred/Gallery/issues\";s:9:\"changelog\";s:9303:\"Changelog for Gallery.\n\nGallery 2.0.0\n====================================\n- Fixed to work with MODX 3\n- Fixed image upload error in log\n- Fix missing images in the manager\n- Fix nonaggregated images in the manager\n\nGallery 1.7.1\n====================================\n- Fixed critical vulnerability in phpthumb processor\n- Fixed namespace paths\n\nGallery 1.7.0\n====================================\n- Fixed showAll parameter in galAlbum\n- Fixed album tree icon\n- Fixed undefined index: Year\n- Updated phpthumb-processor\n- Add browser caching support to phpthumb processor\n- Move Ext.onReady into controllers\n- Add support for &thumbTpl_N tpl in Gallery snippet\n- More 2.3 Fixes\n- Modx 2.3 Compatibility Fixes\n\nGallery 1.6.1\n====================================\n - [#13][#12] Backwards Compatibility Fix\n\nGallery 1.6.0\n====================================\n- [#271] [GalleryAlbums] Added image_absolute placeholder\n- [#270] [GalleryAlbums] Added containerTpl (with navigation placeholders) and totalVar placeholder\n- [#266] Add support for selection of album cover.\n- [#259] Do not cache in getList() when $sort = RAND()\n- [#252] Database Optimization\n- [#248] Fix getPage support in Gallery snippet\n- [#246] Batch import sorts by filename.\n- [#235] show all childs and subchilds of selected parent album by new TV option\n- [#233] Fix property itemCls from being assigned activeCls\'s value\n- [#226] German localization\n- [#151] Needed to show links to next/prev albums\n- [#91] Allow false boolean\n- [#258] Bug fix with random sorting when cached\n- Bug fixes\n\nGallery 1.5.3\n====================================\n- [#9] Fixes Access Denied issue when using Manager / Gallery\n\nGallery 1.5.2\n====================================\n- [#219] Ensure that GalleryAlbums custom TV marks resource edit form dirty and enables save button\n- [#214] Enable Gallery Album browsing via MODX.Browser window\n- [#217] Add default cover when using GalleryAlbums with cover displays and no item is in the album\n\nGallery 1.5.1\n====================================\n- Add DB caching to Gallery and GalleryAlbums snippets, reducing page load times\n- [#172] Add total number of items to galleryalbums album item when cover is shown\n- Add Slimbox2 as a front-end plugin\n- Add url to the item attributes for each item\n- Add parameter &checkForRequestAlbumVar to change parameter &parent when you want to show child albums of current album\n\nGallery 1.5.0\n====================================\n- [#205] Add per page box to paging bar in album items view\n- [#108] Improve drag/drop reorder of items in manager by supressing refresh\n- [#192] Fix issues with deactivating items, albums\n- [#198] Fix sort of albums due to urldecode issue\n- Better optimization of DB fields\n- [#197], [#188] Fix issues with upload and file names\n- [#208] Prevent sorting in drag/drop when target and source is the same\n- Gallery 1.5+ only supports MODX 2.2+ and greater\n- Add GalleryAlbums Media Source type\n- [#183], [#168] Fix absolute paths in Gallery settings that caused pain when moving sites\n- [#164] Trim item/album names on save\n\nGallery 1.4.0\n====================================\n- [#145] Add &gallerifficCss property for specifying an alternate CSS file for Galleriffic plugin\n- [#139] Fix issue with thumbnails and caching in certain environments\n- Fix issue with TinyMCE not being re-instantiated when opening the update item window after the first time.\n- [#141] Update ajaxupload to support IE / old-school image upload.\n- [#140] Add ability to clear successful / failed uploads in multi upload window\n\nGallery 1.3.1\n====================================\n- Add more styling to the multi-upload window and upload log.\n- [#141] Fix multi-upload compatibility with IE\n- [#140] Add ability to clear multi-upload log for successful / failed uploads.\n- Fix bug with TinyMCE not being reloaded on different windows.\n\nGallery 1.3.0\n====================================\n- [#137] Add multi-upload to Gallery albums\n- Add richtext (if TinyMCE installed) to Item/Album description page\n\nGallery 1.2.2\n====================================\n- [#92] Fix issue when uploading item with html description\n- [#124] Fix document root issue with watermarks\n- [#121] Add extra placeholders for containerTpl chunk\n- [#113] Fix name of thumbnails being connector.php\n\nGallery 1.2.1\n====================================\n- [#107] Fix issue with abstract method definition in galZipImport class\n- [#95] Fix issue where thumbFar property was incorrectly set as a boolean\n- [#112] Fix issue with images not respecting gallery.thumbs_prepend_site_url setting\n- [#104] Fix issue with Content Type on cached thumbnails\n\nGallery 1.2.0\n====================================\n- [#97] Change thumbnail logic to use phpthumbof style php code in connector, vastly improving load/thumbnailing speed, and properly caching images\n- [#76], [#94], Zip upload now accepts zip files with just files inside\n- [#102] Fix issue with Gallery and Revolution 2.1.1+\n- [#80] Added GalleryAlbumList custom TV, for selecting Albums in a TV\n- [#82] Fix bug where creating Album did not respect parent\n- [#85] Add random sorting to albums in GalleryAlbums\n\nGallery 1.1.1\n====================================\n- Fix trivial issue with js console error when saving albums\n\nGallery 1.1.0\n====================================\n- [#73] Fix issue with absoluteImage galItem issue and gallery.thumbs_prepend_site_url setting\n- Fix issue where marking gallery active/prominent did not stick\n- [#28], [#64] Gallery items are now stored by albumId/itemId.ext in their directories\n- Added showName for GalleryAlbums to toggle whether or not to display Album name\n- [#29], [#69] Add batch upload via Zip file to albums\n- [#42] Add URL field to galItem object for allowing Items to have URLs that load when you click on them\n- [#46] Add imageProperties, thumbProperties properties to all snippets that allow you to pass a JSON object of properties to pass to phpThumb\n- Add rowCls property to GalleryAlbums\n- [#60] Fix issue with galPhpThumb and image passthru\n- [#67] Fix prev lexicon placeholder in Galleriffic plugin\n- [#66] Fix issue with album cover xPDO call in GalleryAlbums snippet\n- Add total property to Gallery snippet for getPage support\n- i18n of Snippet properties\n\nGallery 1.0.2\n====================================\n- [#31] Add &gallerifficUseCss parameter for toggling CSS by Galleriffic\n- Add cover ability to GalleryAlbums by using rowTpl \"galAlbumRowWithCoverTpl\"\n- Fix issue where Gallery TV albums tree loaded page when clicking on a node\n\nGallery 1.0.1 (December 20th, 2010)\n====================================\n- [#54] Added filepath placeholder for getting absolute path of an image, fileurl for absolute URL\n- [#12] Make left-click do update-album in mgr tree\n- Add additional system setting checks for phpthumb config options.\n- *Many* caching improvements to phpthumb-generated thumbnails\n- Added gallery.thumbs_prepend_site_url setting for environments having issues with thumbnails\n- Fixed bugs with HTML in item thumbs, urls when xhtml_urls is true\n- Added French translation, github readme\n\nGallery 1.0.0\n=============\n- Added checks to prevent spaces in filenames\n- Fixed ampersand issue in gallery URLs\n- Fixed phpthumb cache issue by using core phpthumb\n- Fixed port issue on thumbs\n- Added updated Russian translation\n- Added cropping support to custom TV, fixed bugs\n- Added rotating, watermark and other options to custom TV\n- Added a few settings for customizing backend mgr UX, including default batch upload path\n- Fixed bug with sorting items in album\n- Added Gallery custom TV input, output and properties types\n- Adjusted code to allow batch upload to handle uppercase extensions\n- Updated copyright information\n\nGallery 0.1.2\n====================================\n- Fixed bug with request parameter generation in URLs\n- Abstracted SQL in snippets\n- Added in Russian translation\n\nGallery 0.1.1\n====================================\n- Added \"image_absolute\" placeholder to thumbTpl in Gallery snippet\n- Fixed possible issues with phpthumb and caching\n\nGallery 0.1.0\n====================================\n- Added in batch upload\n- Fixed bug with limit statement in Gallery snippet\n- Made it so Gallery snippet can be called without pointing to anything\n- More properly integrated system, so that albums can easily be toggled between\n- Added GalleryItem snippet\n- Added parameters to adjust the get params for how albums are selected\n- Fixed bug with setting inactive state on images\n- Optimizing for Revo RC-2\n- Fixed bug that occurs if Gallery is used where FURLs are off\n- Added parent support to galAlbums, GalleryAlbums snippet\n- Fixed drag/drop reordering capability in albums\n- Fixed bug with gallery tables prefix\n- Fixed bug in items view related to recent SVN changes\n- Fixed bug in Gallery class that prohibited using tpls (!)\n- Added copyright info to Gallery\n- Fixed various bugs found in test install\n- Setup build script for initial alpha release\n- Added phpThumb to assets directory\n- Added active indicators, name shortening to album update mgr ui\n- Added album remove processor\n- i18ned the code, filled out mgr UI functionality\n- Added check when removing album to delete items not in any other albums\n- Lots of dev work, got basics mostly functional\n- Initial commit\n\";s:13:\"setup-options\";s:34:\"gallery-2.0.0-pl/setup-options.php\";s:9:\"signature\";s:16:\"gallery-2.0.0-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:44:\"/workspace/package/install/gallery-2.0.0-pl/\";s:14:\"package_action\";i:1;}',	'Gallery',	'a:38:{s:2:\"id\";s:24:\"62a4b1807fa13e4b74782b62\";s:7:\"package\";s:24:\"4d556c94b2b083396d000cc9\";s:12:\"display_name\";s:16:\"gallery-2.0.0-pl\";s:4:\"name\";s:7:\"Gallery\";s:7:\"version\";s:5:\"2.0.0\";s:13:\"version_major\";s:1:\"2\";s:13:\"version_minor\";s:1:\"0\";s:13:\"version_patch\";s:1:\"0\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:7:\"matdave\";s:11:\"description\";s:454:\"<p>Gallery is a dynamic Gallery Extra for MODx Revolution. It allows you to quickly and easily put up galleries of images, sort them, tag them, and display them in a myriad of ways in the front-end of your site.</p>\n\n<p>See the official documentation here: <a href=\"http://rtfm.modx.com/display/addon/Gallery\">http://rtfm.modx.com/extras/revo/gallery</a></p><p><b>Important: if you\'re not yet running at least Gallery 1.7.1, upgrade immediately!</b></p>\";s:12:\"instructions\";s:625:\"<p>Install via Package Management.</p><p><b>Note:</b> Make sure to backup your Gallery files in the location in the \'gallery.files_path\' System Setting before upgrading, as this update moves gallery file storage to an album-centric storage method.</p><p><b>Note</b>: Input Options for the GalleryAlbumList TV type only work for Revolution 2.1.0-rc2 and later.</p><p><b>Note</b>: When moving servers with a Gallery installation, you may need to edit these System Settings:</p><ul><li>gallery.core_path</li><li>gallery.assets_path</li><li>gallery.files_path</li><li>gallery.assets_url</li><li>gallery.files_url</li></ul><p></p>\";s:9:\"changelog\";s:139:\"- Fixed to work with MODX 3\n- Fixed image upload error in log\n- Fix missing images in the manager\n- Fix nonaggregated images in the manager\";s:9:\"createdon\";s:24:\"2022-06-11T15:15:12+0000\";s:9:\"createdby\";s:7:\"matdave\";s:8:\"editedon\";s:24:\"2022-06-26T22:18:53+0000\";s:10:\"releasedon\";s:24:\"2022-06-11T15:15:12+0000\";s:9:\"downloads\";s:6:\"207035\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:4:\"true\";s:8:\"featured\";s:4:\"true\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:1:\"2\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=62a4b1807fa13e4b74782b63\";s:9:\"signature\";s:16:\"gallery-2.0.0-pl\";s:11:\"supports_db\";s:5:\"mysql\";s:16:\"minimum_supports\";s:1:\"2\";s:9:\"breaks_at\";s:1:\"3\";s:10:\"screenshot\";s:59:\"http://modx.s3.amazonaws.com/extras/642/gallery-backend.png\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"62a4b1807fa13e4b74782b63\";s:7:\"version\";s:24:\"62a4b1807fa13e4b74782b62\";s:8:\"filename\";s:30:\"gallery-2.0.0-pl.transport.zip\";s:9:\"downloads\";s:3:\"361\";s:6:\"lastip\";s:14:\"37.232.161.181\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=62a4b1807fa13e4b74782b63\";}s:17:\"package-signature\";s:16:\"gallery-2.0.0-pl\";s:10:\"categories\";s:7:\"gallery\";s:4:\"tags\";s:33:\"gallery,image,images,photo,photos\";}',	2,	0,	0,	'pl',	0),
('gauthx-1.0.0-beta1',	'2022-07-02 11:07:52',	'2022-07-02 11:08:05',	'2022-07-02 11:08:05',	0,	1,	1,	0,	'gauthx-1.0.0-beta1.transport.zip',	NULL,	'a:9:{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:761:\"\nGAuthx\n\n\nAuthor: Nick Clark (http://nickclark.ca)\nCopyright 2015\n\nDescription: GAuthx enables the use of the Google Authenticator mobile app for 2-factor-authentication in conjunction with Shaun McCormick\'s Login Snippet (https://github.com/splittingred/Login) and contains two snippets, one to generate authentication secrets and displaying a QR-Code. The other is used as a Login PreHook to validate tokens generated by the Google Authenticator app when a user attempts to login.\n\nOfficial Documentation: https://github.com/nick2687/GAuthx/\n\nBugs and Feature Requests: https://github.com/nick2687/GAuthx/issues\n\nQuestions:\nVisit the forms (http://forums.modx.com) or find me on the Modx Community Slack channel (https://modxcommunity.slack.com/) - @nick2687\n\";s:9:\"changelog\";s:84:\"Changelog for GAuthx\n\nGAuthx 1.0.0\n---------------------------------\nInitial Version\";s:13:\"setup-options\";a:0:{}s:9:\"signature\";s:18:\"gauthx-1.0.0-beta1\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:46:\"/workspace/package/install/gauthx-1.0.0-beta1/\";s:14:\"package_action\";i:0;}',	'GAuthx',	'a:38:{s:2:\"id\";s:24:\"559e9daddc532f69510a1fc1\";s:7:\"package\";s:24:\"559e9daddc532f69510a1fc0\";s:12:\"display_name\";s:18:\"gauthx-1.0.0-beta1\";s:4:\"name\";s:6:\"GAuthx\";s:7:\"version\";s:5:\"1.0.0\";s:13:\"version_major\";s:1:\"1\";s:13:\"version_minor\";s:1:\"0\";s:13:\"version_patch\";s:1:\"0\";s:7:\"release\";s:5:\"beta1\";s:8:\"vrelease\";s:4:\"beta\";s:14:\"vrelease_index\";s:1:\"1\";s:6:\"author\";s:8:\"nick2687\";s:11:\"description\";s:3020:\"<p><b>Description</b></p><p>GAuthx&nbsp;enables the use of the Google Authenticator mobile app for 2-factor-authentication in conjunction with Shaun McCormick\'s&nbsp;<a href=\"http://modx.com/extras/package/login\" title=\"\" target=\"\">Login Snippet</a>&nbsp;and contains two snippets.</p><p><b>GAuthx</b>: To generate authentication secrets and display a QR-Code that you can scan with your phone.</p><p><b>GAuthxHook</b>. A PreHook snippet to be used with&nbsp;<b>Login.&nbsp;</b>This validates&nbsp;tokens generated by the Google Authenticator app when a user attempts to login if they have previously set up an authentication secret with GAuthx.</p><p><b>Official Documentation:</b>&nbsp;<a href=\"https://github.com/nick2687/GAuthx/\" title=\"\" target=\"\">https://github.com/nick2687/GAuthx/</a></p><p><b>Bugs and Feature Requests:&nbsp;</b><a href=\"https://github.com/nick2687/GAuthx/issues\" title=\"https://github.com/nick2687/GAuthx/issues\" target=\"\">https://github.com/nick2687/GAuthx/issues</a></p><p><b>Questions</b>:</p><p>Visit the forms (<a href=\"http://forums.modx.com/\" title=\"http://forums.modx.com\" target=\"\">http://forums.modx.com</a>) or find me on the Modx Community Slack channel (<a href=\"http://modx.com/extras/submit/GAuthx%20%20%20Author:%20Nick%20Clark%20(http://nickclark.ca)%20Copyright%202015%20%20Description:%20GAuthx%20enables%20the%20use%20of%20the%20Google%20Authenticator%20mobile%20app%20for%202-factor-authentication%20in%20conjunction%20with%20Shaun%20McCormick\'s%20Login%20Snippet%20(https://github.com/splittingred/Login)%20and%20contains%20two%20snippets,%20one%20to%20generate%20authentication%20secrets%20and%20displaying%20a%20QR-Code.%20The%20other%20is%20used%20as%20a%20Login%20PreHook%20to%20validate%20tokens%20generated%20by%20the%20Google%20Authenticator%20app%20when%20a%20user%20attempts%20to%20login.%20%20Official%20Documentation:%20https://github.com/nick2687/GAuthx/%20%20Bugs%20and%20Feature%20Requests:%20https://github.com/nick2687/GAuthx/issues%20%20Questions:%20Visit%20the%20forms%20(http://forums.modx.com)%20or%20find%20me%20on%20the%20Modx%20Community%20Slack%20channel%20(https://modxcommunity.slack.com/)%20-%20@nick2687\" title=\"GAuthx   Author: Nick Clark (http://nickclark.ca) Copyright 2015  Description: GAuthx enables the use of the Google Authenticator mobile app for 2-factor-authentication in conjunction with Shaun McCormick\'s Login Snippet (https://github.com/splittingred/Login) and contains two snippets, one to generate authentication secrets and displaying a QR-Code. The other is used as a Login PreHook to validate tokens generated by the Google Authenticator app when a user attempts to login.  Official Documentation: https://github.com/nick2687/GAuthx/  Bugs and Feature Requests: https://github.com/nick2687/GAuthx/issues  Questions: Visit the forms (http://forums.modx.com) or find me on the Modx Community Slack channel (https://modxcommunity.slack.com/) - @nick2687\" target=\"\">https://modxcommunity.slack.com/</a>) - @nick2687</p><p></p>\";s:12:\"instructions\";s:38:\"<p>Install via Package Management.</p>\";s:9:\"changelog\";s:0:\"\";s:9:\"createdon\";s:24:\"2015-07-09T16:13:33+0000\";s:9:\"createdby\";s:8:\"nick2687\";s:8:\"editedon\";s:24:\"2022-06-30T23:51:33+0000\";s:10:\"releasedon\";s:24:\"2015-07-14T09:46:09+0000\";s:9:\"downloads\";s:3:\"840\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:3:\"2.2\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=559e9daedc532f69510a1fc2\";s:9:\"signature\";s:18:\"gauthx-1.0.0-beta1\";s:11:\"supports_db\";s:5:\"mysql\";s:16:\"minimum_supports\";s:3:\"2.2\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:75:\"http://modx.s3.amazonaws.com/extras%2F559e9daddc532f69510a1fc0%2FGAuthx.png\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"559e9daedc532f69510a1fc2\";s:7:\"version\";s:24:\"559e9daddc532f69510a1fc1\";s:8:\"filename\";s:32:\"gauthx-1.0.0-beta1.transport.zip\";s:9:\"downloads\";s:3:\"840\";s:6:\"lastip\";s:13:\"51.222.253.12\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=559e9daedc532f69510a1fc2\";}s:17:\"package-signature\";s:18:\"gauthx-1.0.0-beta1\";s:10:\"categories\";s:31:\"integrations,security,utilities\";s:4:\"tags\";s:0:\"\";}',	1,	0,	0,	'beta',	1),
('gravatar-2.1-pl',	'2021-08-05 18:50:17',	'2021-08-05 16:50:41',	'2021-08-05 18:50:41',	0,	1,	1,	0,	'gravatar-2.1-pl.transport.zip',	NULL,	'a:6:{s:6:\"readme\";s:2753:\"﻿--------------------\nSnippet: Gravatar\nDescription: Globally recognized avatars\n--------------------\n\nVersion: 2\nAuthor: Oleg Pryadko <oleg@websitezen.com>\nSince: Jan 16, 2011\nLicense: Public domain (except possibly class file, which is based on http://www.talkphp.com/script-giveaway/1905-gravatar-wrapper-class.html)\n\nChangelog \n2.1: fixed SSL url, added profile support\n2.0: added SSL, class files\n\nHistory:\nVersion 1\nSince: May 22th, 2010\nAuthor: lossendae <lossendae@gmail.com>\nLicense: Public domain\n\n\n----------------------------------------------\nUsage:\n----------------------------------------------\n\nTo load Gravatar image URL with a snippet call use:\n[[!Gravatar? &email=`youremail` &size=`yoursize` &rating=`yourrating` &default=`defaultavatar`]]\n\nTo load a profile URL with a snippet call use:\n[[!Gravatar? &profile=`1`]]\n\n\n----------------------------------------------\nThe options available are:\n----------------------------------------------\n\n&email: 		the email adress of the user.\n\n&size: 			the size of the returned image (between 0 & 512).\n\n&rating: 		the rating of the image. Most of the time users only have the default one. Can be: g, G, pg, PG, r, R, x, or X\n	\n&default: 		The defaut avatar - can be an url or one the following choices: identicon, monster, wavatar, retro, mystery (monsterid and mm also ok)\n\n&secure: 		Whether to use HTTPS or not. Set to `0` or `false` to use HTTP, or set to true to use HTTPS. Otherwise, the snippet will automatically use HTTPS if the page that the snippet is on is accessed under HTTPS.\n\n&extraParams: 	[NEW] JSON array of options to append to the URL. Please see the gravatar docs  at http://en.gravatar.com/site/implement/ for the currently available options. Example: {\"s\":120,\"option\":\"value\"}\n\n&profile [NEW]: [NEW] Instead of generating a URL to an image, generates a URL to the profile. See gravatar docs for examples on the different formats. Possible values:\n	0 or empty 		(default - link to profile image.)\n	1 or true		(default profile URL/ VCF/ VCard)\n	json 			(JSON format)\n	xml 			(XML format)\n	php 			(PHP format)\n	qr 				(QR format)\n\n\n----------------------------------------------\nGravatar is output filter ready for email and \nsize or filetype parameters.\n----------------------------------------------\n\nFor example, with Quip you can do it like that:\n[[!Gravatar? &email=`[[+email]]`]]\n\nor with a specified size :\n[[!Gravatar? &email=`[[+email]]` &size=`40`]]\n\nor by using output filter directly on the placeholder:\n[[+email:Gravatar]]\n\nor with a specified size :\n[[+email:Gravatar=`40`]]\n\n[NEW] You can also use a non-numeric output filter value to generate the profile (same as specifying &profile parameter):\n[[+email:Gravatar=`true`]] or [[+email:Gravatar=`json`]]\n\n\";s:9:\"signature\";s:15:\"gravatar-2.1-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:43:\"/workspace/package/install/gravatar-2.1-pl/\";s:14:\"package_action\";i:0;}',	'Gravatar',	'a:38:{s:2:\"id\";s:24:\"4d556cb4b2b083396d000d8a\";s:7:\"package\";s:24:\"4d556cb3b2b083396d000d85\";s:12:\"display_name\";s:15:\"gravatar-2.1-pl\";s:4:\"name\";s:8:\"Gravatar\";s:7:\"version\";s:3:\"2.1\";s:13:\"version_major\";s:1:\"2\";s:13:\"version_minor\";s:1:\"1\";s:13:\"version_patch\";s:1:\"0\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:1:\"0\";s:6:\"author\";s:5:\"yoleg\";s:11:\"description\";s:934:\"<p>Globally recognized avatars - snippet and custom output filter.</p>\n<p>Changelog:<br />2.1: Fixed SSL urls and added support for generating profile links. <br />2.0: Added SSL support, specific options, and detailed Gravatar class.</p>\n<p>Example Snippet Usage:<br />&#91;&#91;!Gravatar? &amp;email=`youremail@domain.com` &amp;size=`50` &amp;rating=`r` &amp;default=`wavatar`&#93;&#93;<br />&#91;&#91;!Gravatar? &amp;email=`youremail@domain.com` &amp;profile=`true`&#93;&#93;\n&#91;&#91;!Gravatar? &amp;email=`youremail@domain.com` &amp;profile=`json` &amp;secure=`1` &amp;extraParams=`{\"callback\":\"alert\"}`&#93;&#93;</p>\n<p>Example Output Filter Usage<br />&#91;&#91;+email:Gravatar=`40`&#93;&#93;    &lt;!--&nbsp;&nbsp;(option value is numeric)&nbsp;generates image with size 40 --&gt;<br />&#91;&#91;+email:Gravatar=`json`&#93;&#93;    &lt;!--&nbsp;&nbsp;(option value is non-numeric)&nbsp;generates image with size 40 --&gt;</p>\";s:12:\"instructions\";s:3011:\"--------------------\nSnippet: Gravatar\nDescription: Globally recognized avatars\n--------------------\nVersion: 2\nAuthor: Oleg Pryadko &lt;oleg@websitezen.com&gt;\nSince: Jan 16, 2011\nLicense: Public domain (except possibly class file, which is based on http://www.talkphp.com/script-giveaway/1905-gravatar-wrapper-class.html)\nChangelog&nbsp;\n2.1: fixed SSL url, added profile support\n2.0: added SSL, class files\nHistory:\nVersion 1\nSince: May 22th, 2010\nAuthor: lossendae &lt;lossendae@gmail.com&gt;\nLicense: Public domain\n----------------------------------------------\nUsage:\n----------------------------------------------\nTo load Gravatar image URL with a snippet call use:\n&#91;&#91;!Gravatar? &amp;email=`youremail` &amp;size=`yoursize` &amp;rating=`yourrating` &amp;default=`defaultavatar`&#93;&#93;\nTo load a profile URL with a snippet call use:\n&#91;&#91;!Gravatar? &amp;profile=`1`&#93;&#93;\n----------------------------------------------\nThe options available are:\n----------------------------------------------\n&amp;email: 		the email adress of the user.\n&amp;size: 			the size of the returned image (between 0 &amp; 512).\n&amp;rating: 		the rating of the image. Most of the time users only have the default one. Can be: g, G, pg, PG, r, R, x, or X\n&amp;default: 		The defaut avatar - can be an url or one the following choices: identicon, monster, wavatar, retro, mystery (monsterid and mm also ok)\n&amp;secure: 		Whether to use HTTPS or not. Set to `0` or `false` to use HTTP, or set to true to use HTTPS. Otherwise, the snippet will automatically use HTTPS if the page that the snippet is on is accessed under HTTPS.\n&amp;extraParams: 	&#91;NEW&#93; JSON array of options to append to the URL. Please see the gravatar docs &nbsp;at http://en.gravatar.com/site/implement/ for the currently available options. Example: {\"s\":120,\"option\":\"value\"}\n&amp;profile &#91;NEW&#93;: &#91;NEW&#93; Instead of generating a URL to an image, generates a URL to the profile. See gravatar docs for examples on the different formats. Possible values:\n	0 or empty 		(default - link to profile image.)\n	1 or true		(default profile URL/ VCF/ VCard)\n	json 			(JSON format)\n	xml 			(XML format)\n	php 			(PHP format)\n	qr 				(QR format)\n----------------------------------------------\nGravatar is output filter ready for email and&nbsp;\nsize or filetype parameters.\n----------------------------------------------\nFor example, with Quip you can do it like that:\n&#91;&#91;!Gravatar? &amp;email=`&#91;&#91;+email&#93;&#93;`&#93;&#93;\nor with a specified size :\n&#91;&#91;!Gravatar? &amp;email=`&#91;&#91;+email&#93;&#93;` &amp;size=`40`&#93;&#93;\nor by using output filter directly on the placeholder:\n&#91;&#91;+email:Gravatar&#93;&#93;\nor with a specified size :\n&#91;&#91;+email:Gravatar=`40`&#93;&#93;\n&#91;NEW&#93; You can also use a non-numeric output filter value to generate the profile (same as specifying &amp;profile parameter):\n&#91;&#91;+email:Gravatar=`true`&#93;&#93; or &#91;&#91;+email:Gravatar=`json`&#93;&#93;\";s:9:\"changelog\";s:0:\"\";s:9:\"createdon\";s:24:\"2011-01-20T00:37:19+0000\";s:9:\"createdby\";s:5:\"yoleg\";s:8:\"editedon\";s:24:\"2021-08-05T02:14:41+0000\";s:10:\"releasedon\";s:24:\"2011-01-21T08:03:04+0000\";s:9:\"downloads\";s:4:\"2798\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:13:\"Public Domain\";s:7:\"smf_url\";s:47:\"http://modxcms.com/forums/index.php?topic=60127\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:1:\"2\";s:8:\"location\";s:60:\"http://modx.com/extras/download/?id=4d556cb4b2b083396d000d8b\";s:9:\"signature\";s:15:\"gravatar-2.1-pl\";s:11:\"supports_db\";s:5:\"mysql\";s:16:\"minimum_supports\";s:1:\"2\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:0:\"\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"4d556cb4b2b083396d000d8b\";s:7:\"version\";s:24:\"4d556cb4b2b083396d000d8a\";s:8:\"filename\";s:29:\"gravatar-2.1-pl.transport.zip\";s:9:\"downloads\";s:4:\"2405\";s:6:\"lastip\";s:14:\"216.244.66.247\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:60:\"http://modx.com/extras/download/?id=4d556cb4b2b083396d000d8b\";}s:17:\"package-signature\";s:15:\"gravatar-2.1-pl\";s:10:\"categories\";s:15:\"personalization\";s:4:\"tags\";s:0:\"\";}',	2,	1,	0,	'pl',	0),
('imageplus-2.8.8-pl2',	'2023-12-17 22:19:15',	'2023-12-17 22:19:16',	NULL,	0,	1,	0,	0,	'imageplus-2.8.8-pl2.transport.zip',	NULL,	'a:5:{s:7:\"license\";s:15215:\"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\n\";s:6:\"readme\";s:995:\"# Image+\n\nAdvanced image custom template variable for MODX Revolution.\n\n- Author: Alan Pich <alan.pich@gmail.com>\n- Maintainer and further development: Thomas Jakobi <office@treehillstudio.com>\n- License: GNU GPLv2\n\n## Features\n\nWith this MODX Revolution custom template variable an image could be cropped\nwhile maintaining the original image. The dimensions for the image can\n(optionally) be configured to constrain a minimal width and/or height. The image\ncrop could be forced to remain at a pre-set ratio. A graphical tool could be\nused to crop the image to the required dimensions/proportions.\n\n## Installation\n\nMODX Package Management\n\n## Usage\n\nInstall via package manager, create a TV and change the input & output type to\n\'Image+\'\n\n## Documentation\n\nFor more information please read the documentation on\nhttps://jako.github.io/ImagePlus/\n\n## GitHub Repository\n\nhttps://github.com/Jako/ImagePlus\n\n## Dependencies\n\nMODX Cropping Engine i.e. pthumb <https://modx.com/extras/package/pthumb>\n\";s:9:\"changelog\";s:6007:\"# Changelog\n\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),\nand this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).\n\n## [2.8.8] - 2022-02-16\n\n### Fixed\n\n- Fix OnDocFormRender was not found!\n\n## [2.8.7] - 2022-02-12\n\n### Fixed\n\n- Fix options property of ImagePlus snippet [#107]\n\n## [2.8.6] - 2022-02-05\n\n### Changed\n\n- Code refactoring\n\n### Fixed\n\n- Fix OnDocFormRender was not found!\n\n## [2.8.5] - 2021-12-30\n\n### Fixed\n\n- Fix styling issues in MODX 3 backend\n\n## [2.8.4] - 2021-12-20\n\n### Fixed\n\n- Fix for PHP 8 warnings\n\n## [2.8.3] - 2021-03-06\n\n### Changed\n\n- Compatibility with MODX 3\n\n## [2.8.2] - 2021-01-19\n\n### Fixed\n\n- Fix the ImagePlus.MIGX_Renderer to show normal images too\n\n## [2.8.1] - 2020-01-04\n\n### Fixed\n\n- Prevent an error, when $modx->resource is not set\n\n## [2.8.0] - 2018-11-15\n\n### Changed\n\n- Updated jQuery\n\n### Fixed\n\n- Fixing a jQuery issue with ContentBlocks and other extras that use jQuery inside [#60]\n- Fixing cannot read property \'destroy\' of undefined issue\n- Fixing Undefined property issue [#71]\n- Fixing a window issue with really small images [#53]\n\n### Removed\n\n- Some IE < 9 CSS rules\n\n## [2.7.0] - 2017-11-13\n\n### Changed\n\n- Improved check for the allowBlank TV option\n\n### Fixed\n\n- Bugfix for using a wrong plugin event name in special circumstances\n\n### Added\n\n- phpThumbOn crop engine\n- Warning in the TV output options for the right usage of the Generate Thumb URL property\n\n## [2.6.3] - 2017-06-01\n\n### Fixed\n\n- Bugfix a full server path in the url placeholder\n\n## [2.6.2] - 2017-02-21\n\n### Fixed\n\n- Bugfix for disabled option \'Generate Thumbnail URL\' and an empty url placeholder\n\n## [2.6.1] - 2017-02-03\n\n### Fixed\n\n- Bugfix for an empty select_config system setting\n\n## [2.6.0] - 2017-02-01\n\n### Fixed\n\n- Fixed a missing realpath issue\n\n### Added\n\n- System wide predefined crop sizes/aspect ratios, selectable in the TV options\n- Context/system settings that supercede the TV options\n\n### Removed\n\n- MODX 2.2 compatibility\n\n## [2.5.0] - 2016-12-17\n\n### Fixed\n\n- Fix showing a full server path, when the image is not found [#41]\n\n### Added\n\n- Optional caption and credits fields below of the image\n\n## [2.4.5] - 2016-07-29\n\n### Fixed\n\n- Solved an installation issue on Windows machines\n\n## [2.4.4] - 2016-06-15\n\n### Changed\n\n- Don\'t try get an Image+ url with an empty template variable value\n- Change the image by typing the filename\n- Correcting typos, refactored code\n\n### Added\n\n- Add assets files on manager pages (i.e. for MIGX)\n- Log invalid JSON only if imageplus.debug system setting is active\n- Use only uglified/minified scripts in package code\n\n## [2.4.3] - 2016-03-03\n\n### Fixed\n\n- Fixed not found image in combined/minified css file\n\n### Added\n\n- The alt text field could contain special chars\n- Debug system setting for enabling not combined and minified/uglified css/js files\n\n## [2.4.2] - 2016-01-18\n\n### Added\n\n- The snippet could use inherited values\n\n## [2.4.1] - 2016-01-16\n\n### Changed\n\n- Change the image by typing the filename\n\n### Fixed\n\n- Fixing recoverable errors\n\n### Added\n\nTranslated error messages\n\n## [2.4.0] - 2016-01-15\n\n### Changed\n\n- Improved error logging\n- Resolved issues with apostrophes in language strings\n\n### Added\n\n- Retain the value of a MODX TV as source image for the Image+ TV\n- Fill output chunk placeholders with script properties\n\n## [2.3.4] - 2015-08-06\n\n### Changed\n\n- Open crop window automatic after selecting a new image\n- Bugfix for media source issue in MIGX\n\n## [2.3.3] - 2015-07-05\n\n### Changed\n\n- Run jQuery in noConflict mode\n\n## [2.3.2] - 2015-06-06\n\n### Added\n\n- \'value\' parameter in the ImagePlus Snippet\n\n## [2.3.1] - 2015-06-05\n\n### Changed\n\n- Use default_media_source if the media source of the TV is not set (i.e. if it used in a MIGX configuration)\n- Don\'t show the crop window if the image size is invalid\n\n### Added\n\n- Enable property sets for the ImagePlus Snippet\n\n## [2.3.0] - 2015-05-24\n\n### Changed\n\n- Updated Jcrop plugin and jQuery\n- Updated Czech translation (@bartholomej)\n- Updated Dutch translation (@Mark-H)\n- Updated French translation (@AmaZili)\n- Updated Russian translation (@Alroniks, serimarda)\n\n### Fixed\n\n- Bugfix for fireResourceFormChange issue\n- Bugfix for a Firefox display issue\n\n### Added\n\n- MODX 2.3 compatibility\n- Inline Trigger fields\n- Some better backend styling\n- Set thumbnail width in template variable panel\n- Set crop aspect ratio in template variable input options\n- Respect context settings for media sources\n- Center the crop window in the viewport\n\n## [2.2.x] - 2013-11-02\n\n### Changed\n\n- Refactored to allow changing of crop engines\n- Confirmed to work with Articles [#21]\n- Now works with MIGX [#15]\n- TV Default Value is now output if TV is empty\n- TV Reset button now works [#22]\n\n### Added\n\n- GUI warning of missing dependencies\n- phpThumbsUp crop engine\n- grid renderer for MIGX backend\n- image preloader to accurately get image size on upload. This is because MODX File Manager will not report accurate image size for images above 800x600 [#8]\n- option to put an icon on TV input \'crop\' button [#16]\n- Create a system setting called imageplus.crop_icon and populate it with the url to the desired icon png\n- system setting override for core_path and assets_url [#25]\n- Czech translation (@TheBoxer)\n- Danish translation (@Flygenring)\n- German translation (@KristianP)\n- Spanish translation (Nico Telfer)\n- French translation (@rtripault)\n- Hungarian translation (Kristof Kotai)\n- Italian translation (@tillilab)\n- Dutch translation (@Mark-H)\n- Russian translation (@Alroniks)\n- French translation (@Alroniks)\n\n## [2.1.x] - 2012-12-09\n\n### Changed\n\n- Fixed bug with non-default media sources\n\n### Added\n\n- Field for additional phpThumb parameters to output renderer\n- Option to specify a chunk for output formatting (fields: url,alt,width,height)\n\n## [2.0.x] - 2012-12-01\n\n### Added\n\n- Complete rewrite\n\";s:13:\"setup-options\";s:37:\"imageplus-2.8.8-pl2/setup-options.php\";s:8:\"requires\";a:2:{s:3:\"php\";s:5:\">=5.6\";s:4:\"modx\";s:5:\">=2.6\";}}',	'imageplus',	NULL,	2,	8,	8,	'pl',	2),
('imageplus-2.9.1-pl',	'2022-06-27 00:27:29',	'2022-06-26 22:27:48',	'2022-06-27 00:27:48',	0,	1,	1,	0,	'imageplus-2.9.1-pl.transport.zip',	NULL,	'a:10:{s:7:\"license\";s:15215:\"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\n\";s:6:\"readme\";s:995:\"# Image+\n\nAdvanced image custom template variable for MODX Revolution.\n\n- Author: Alan Pich <alan.pich@gmail.com>\n- Maintainer and further development: Thomas Jakobi <office@treehillstudio.com>\n- License: GNU GPLv2\n\n## Features\n\nWith this MODX Revolution custom template variable an image could be cropped\nwhile maintaining the original image. The dimensions for the image can\n(optionally) be configured to constrain a minimal width and/or height. The image\ncrop could be forced to remain at a pre-set ratio. A graphical tool could be\nused to crop the image to the required dimensions/proportions.\n\n## Installation\n\nMODX Package Management\n\n## Usage\n\nInstall via package manager, create a TV and change the input & output type to\n\'Image+\'\n\n## Documentation\n\nFor more information please read the documentation on\nhttps://jako.github.io/ImagePlus/\n\n## GitHub Repository\n\nhttps://github.com/Jako/ImagePlus\n\n## Dependencies\n\nMODX Cropping Engine i.e. pthumb <https://modx.com/extras/package/pthumb>\n\";s:9:\"changelog\";s:6377:\"# Changelog\n\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),\nand this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).\n\n## [2.9.1] - 2022-06-16\n\n### Fixed\n\n- Fix showing small initial crops for large images\n\n### Changed\n\n- Update jCrop to v0.9.15\n\n## [2.9.0] - 2022-06-08\n\n### Fixed\n\n- Fix showing invalid size message for large images\n- Fix some scrollbar glitches\n- Fix editing template variable properties in MODX 3.0.1\n\n## [2.8.9] - 2022-03-23\n\n### Fixed\n\n- Fix removing plugin events\n\n## [2.8.8] - 2022-02-16\n\n### Fixed\n\n- Fix OnDocFormRender was not found!\n\n## [2.8.7] - 2022-02-12\n\n### Fixed\n\n- Fix options property of ImagePlus snippet [#107]\n\n## [2.8.6] - 2022-02-05\n\n### Changed\n\n- Code refactoring\n\n### Fixed\n\n- Fix OnDocFormRender was not found!\n\n## [2.8.5] - 2021-12-30\n\n### Fixed\n\n- Fix styling issues in MODX 3 backend\n\n## [2.8.4] - 2021-12-20\n\n### Fixed\n\n- Fix for PHP 8 warnings\n\n## [2.8.3] - 2021-03-06\n\n### Changed\n\n- Compatibility with MODX 3\n\n## [2.8.2] - 2021-01-19\n\n### Fixed\n\n- Fix the ImagePlus.MIGX_Renderer to show normal images too\n\n## [2.8.1] - 2020-01-04\n\n### Fixed\n\n- Prevent an error, when $modx->resource is not set\n\n## [2.8.0] - 2018-11-15\n\n### Changed\n\n- Updated jQuery\n\n### Fixed\n\n- Fixing a jQuery issue with ContentBlocks and other extras that use jQuery inside [#60]\n- Fixing cannot read property \'destroy\' of undefined issue\n- Fixing Undefined property issue [#71]\n- Fixing a window issue with really small images [#53]\n\n### Removed\n\n- Some IE < 9 CSS rules\n\n## [2.7.0] - 2017-11-13\n\n### Changed\n\n- Improved check for the allowBlank TV option\n\n### Fixed\n\n- Bugfix for using a wrong plugin event name in special circumstances\n\n### Added\n\n- phpThumbOn crop engine\n- Warning in the TV output options for the right usage of the Generate Thumb URL property\n\n## [2.6.3] - 2017-06-01\n\n### Fixed\n\n- Bugfix a full server path in the url placeholder\n\n## [2.6.2] - 2017-02-21\n\n### Fixed\n\n- Bugfix for disabled option \'Generate Thumbnail URL\' and an empty url placeholder\n\n## [2.6.1] - 2017-02-03\n\n### Fixed\n\n- Bugfix for an empty select_config system setting\n\n## [2.6.0] - 2017-02-01\n\n### Fixed\n\n- Fixed a missing realpath issue\n\n### Added\n\n- System wide predefined crop sizes/aspect ratios, selectable in the TV options\n- Context/system settings that supercede the TV options\n\n### Removed\n\n- MODX 2.2 compatibility\n\n## [2.5.0] - 2016-12-17\n\n### Fixed\n\n- Fix showing a full server path, when the image is not found [#41]\n\n### Added\n\n- Optional caption and credits fields below of the image\n\n## [2.4.5] - 2016-07-29\n\n### Fixed\n\n- Solved an installation issue on Windows machines\n\n## [2.4.4] - 2016-06-15\n\n### Changed\n\n- Don\'t try get an Image+ url with an empty template variable value\n- Change the image by typing the filename\n- Correcting typos, refactored code\n\n### Added\n\n- Add assets files on manager pages (i.e. for MIGX)\n- Log invalid JSON only if imageplus.debug system setting is active\n- Use only uglified/minified scripts in package code\n\n## [2.4.3] - 2016-03-03\n\n### Fixed\n\n- Fixed not found image in combined/minified css file\n\n### Added\n\n- The alt text field could contain special chars\n- Debug system setting for enabling not combined and minified/uglified css/js files\n\n## [2.4.2] - 2016-01-18\n\n### Added\n\n- The snippet could use inherited values\n\n## [2.4.1] - 2016-01-16\n\n### Changed\n\n- Change the image by typing the filename\n\n### Fixed\n\n- Fixing recoverable errors\n\n### Added\n\nTranslated error messages\n\n## [2.4.0] - 2016-01-15\n\n### Changed\n\n- Improved error logging\n- Resolved issues with apostrophes in language strings\n\n### Added\n\n- Retain the value of a MODX TV as source image for the Image+ TV\n- Fill output chunk placeholders with script properties\n\n## [2.3.4] - 2015-08-06\n\n### Changed\n\n- Open crop window automatic after selecting a new image\n- Bugfix for media source issue in MIGX\n\n## [2.3.3] - 2015-07-05\n\n### Changed\n\n- Run jQuery in noConflict mode\n\n## [2.3.2] - 2015-06-06\n\n### Added\n\n- \'value\' parameter in the ImagePlus Snippet\n\n## [2.3.1] - 2015-06-05\n\n### Changed\n\n- Use default_media_source if the media source of the TV is not set (i.e. if it used in a MIGX configuration)\n- Don\'t show the crop window if the image size is invalid\n\n### Added\n\n- Enable property sets for the ImagePlus Snippet\n\n## [2.3.0] - 2015-05-24\n\n### Changed\n\n- Updated Jcrop plugin and jQuery\n- Updated Czech translation (@bartholomej)\n- Updated Dutch translation (@Mark-H)\n- Updated French translation (@AmaZili)\n- Updated Russian translation (@Alroniks, serimarda)\n\n### Fixed\n\n- Bugfix for fireResourceFormChange issue\n- Bugfix for a Firefox display issue\n\n### Added\n\n- MODX 2.3 compatibility\n- Inline Trigger fields\n- Some better backend styling\n- Set thumbnail width in template variable panel\n- Set crop aspect ratio in template variable input options\n- Respect context settings for media sources\n- Center the crop window in the viewport\n\n## [2.2.x] - 2013-11-02\n\n### Changed\n\n- Refactored to allow changing of crop engines\n- Confirmed to work with Articles [#21]\n- Now works with MIGX [#15]\n- TV Default Value is now output if TV is empty\n- TV Reset button now works [#22]\n\n### Added\n\n- GUI warning of missing dependencies\n- phpThumbsUp crop engine\n- grid renderer for MIGX backend\n- image preloader to accurately get image size on upload. This is because MODX File Manager will not report accurate image size for images above 800x600 [#8]\n- option to put an icon on TV input \'crop\' button [#16]\n- Create a system setting called imageplus.crop_icon and populate it with the url to the desired icon png\n- system setting override for core_path and assets_url [#25]\n- Czech translation (@TheBoxer)\n- Danish translation (@Flygenring)\n- German translation (@KristianP)\n- Spanish translation (Nico Telfer)\n- French translation (@rtripault)\n- Hungarian translation (Kristof Kotai)\n- Italian translation (@tillilab)\n- Dutch translation (@Mark-H)\n- Russian translation (@Alroniks)\n- French translation (@Alroniks)\n\n## [2.1.x] - 2012-12-09\n\n### Changed\n\n- Fixed bug with non-default media sources\n\n### Added\n\n- Field for additional phpThumb parameters to output renderer\n- Option to specify a chunk for output formatting (fields: url,alt,width,height)\n\n## [2.0.x] - 2012-12-01\n\n### Added\n\n- Complete rewrite\n\";s:13:\"setup-options\";s:36:\"imageplus-2.9.1-pl/setup-options.php\";s:8:\"requires\";a:2:{s:3:\"php\";s:5:\">=5.6\";s:4:\"modx\";s:5:\">=2.6\";}s:9:\"signature\";s:18:\"imageplus-2.9.1-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:46:\"/workspace/package/install/imageplus-2.9.1-pl/\";s:14:\"package_action\";i:0;}',	'Image+',	'a:38:{s:2:\"id\";s:24:\"62aaec386f26f24808190ba2\";s:7:\"package\";s:24:\"4f2aa00df2455455a900039b\";s:12:\"display_name\";s:18:\"imageplus-2.9.1-pl\";s:4:\"name\";s:6:\"Image+\";s:7:\"version\";s:5:\"2.9.1\";s:13:\"version_major\";s:1:\"2\";s:13:\"version_minor\";s:1:\"9\";s:13:\"version_patch\";s:1:\"1\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:4:\"jako\";s:11:\"description\";s:693:\"Image+ is an advanced image custom template variable type for MODx Revolution. The dimensions for the uploaded image can (optionally) be configured to constrain a minimal width and/or height. The image crop could be forced to remain at a pre-set ratio. A graphical tool could be used to crop the image to the required dimensions/proportions.\n\n- Visual Image cropping tool integrated into the MODX manager interface.\n- Option to constrain minimal width and/or height for the uploaded image.\n- User image crop can be forced to remain at pre-set ratio.\n- Use a chunk as an output template and fill placeholders with url, height, width, alt-tag, phpthumb options etc of the cropped uploaded image.\";s:12:\"instructions\";s:235:\"Install through package manager and select \'Image+\' as template variable input type and output type, when you create a new template variable. Ensure you also have a supported cropping engine (pThumb, phpThumbOf, phpThumbsUp) installed.\";s:9:\"changelog\";s:216:\"- Fix showing small initial crops for large images\n- Fix showing invalid size message for large images\n- Fix some scrollbar glitches\n- Fix editing template variable properties in MODX 3.0.1\n- Update jCrop to v0.9.15\n\";s:9:\"createdon\";s:24:\"2022-06-16T08:39:20+0000\";s:9:\"createdby\";s:4:\"jako\";s:8:\"editedon\";s:24:\"2022-06-26T22:02:56+0000\";s:10:\"releasedon\";s:24:\"2022-06-16T08:39:20+0000\";s:9:\"downloads\";s:5:\"36517\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:3:\"2.6\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=62aaec386f26f24808190ba3\";s:9:\"signature\";s:18:\"imageplus-2.9.1-pl\";s:11:\"supports_db\";s:5:\"mysql\";s:16:\"minimum_supports\";s:3:\"2.6\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:0:\"\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"62aaec386f26f24808190ba3\";s:7:\"version\";s:24:\"62aaec386f26f24808190ba2\";s:8:\"filename\";s:32:\"imageplus-2.9.1-pl.transport.zip\";s:9:\"downloads\";s:3:\"253\";s:6:\"lastip\";s:14:\"37.232.161.181\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=62aaec386f26f24808190ba3\";}s:17:\"package-signature\";s:18:\"imageplus-2.9.1-pl\";s:10:\"categories\";s:26:\"content,gallery,multimedia\";s:4:\"tags\";s:40:\"image,image+,imageplus,resize,photo,crop\";}',	2,	9,	1,	'pl',	0),
('jevix-1.3.2-pl',	'2020-02-19 03:53:53',	'2022-06-26 22:31:38',	'2020-02-19 15:53:53',	0,	1,	3,	0,	'jevix-1.3.2-pl.transport.zip',	NULL,	'a:3:{s:9:\"changelog\";s:1133:\"Changelog for Jevix.\n\n1.3.2 pl\n==============\n- Updated Jevix core to version 1.2.4.\n\n1.3.1 pl\n==============\n- Updated Jevix core to version 1.2.3.\n\n1.3.0 pl\n==============\n- Added \"agelxnash/jevix\" as composer dependency.\n- PSR-2 code refactor.\n- No more \"Jevix\" category in manager.\n- Requires PHP 5.4+\n\n1.2.2 pl\n==============\n- Added new parameter escapeTags, disabled by default.\n\n1.2.1 pl\n==============\n- Improved default cfgSetAutoPregReplace for support of YouTube https.\n\n1.2.0 pl2\n==============\n- Fixed the punctuation at the end of the link.\n- Fixed nested tags in a preformatted blocks.\n- Support for MODX tags in a preformatted blocks.\n- Improved checking of urls.\n- Main class refactor.\n\n1.1.1\n==============\n- Fixed errors handling\n\n1.1.0\n==============\n- Updated Jevix class from LiveStreet CMS\n- New parameter cfgSetTagBlockType for tags which do not need to insert <br> after.\n- New parameter cfgSetAutoPregReplace for auto replace with support of regular expressions.\n- Tuned default properties, enabled tables.\n- Links are now supports modx tags, e.g. [[~1]], [[+link]]\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:248:\"--------------------\nJevix\n--------------------\nVersion: 1.0.0\nAuthor: John Doe <john@doe.com>\n--------------------\n\nA basic Extra for MODx Revolution.\n\nFeel free to suggest ideas/improvements/bugs on GitHub:\nhttp://github.com/username/Jevix/issues\";}',	'Jevix',	NULL,	1,	3,	2,	'pl',	0),
('login-1.9.10-pl',	'2022-03-21 08:42:18',	'2022-03-21 08:42:29',	'2022-03-21 08:42:29',	0,	1,	1,	0,	'login-1.9.10-pl.transport.zip',	NULL,	'a:8:{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:2998:\"--------------------\nSnippet: Login\n--------------------\n- Version: 1.9.8\n- Since: June 21, 2010\n- Author: Jason Coward <jason@modx.com>,\n        Shaun McCormick <shaun+login@modx.com>\n\nThis component loads a simple login and logout form. It also comes packaged\nwith ForgotPassword and ResetPassword snippets, which allow the user to put\nin their username or email to receive a confirmation email which will reset\ntheir password.\n\nExample for Login:\n```\n[[!Login]]\n```\n\nYou can also specify the template:\n\n```\n[[!Login? &tpl=`myLoginChunk`]]\n```\n\nSee the snippet properties for more options.\n\n--------------\nForgotPassword\n--------------\n\nTo use the password retrieval functionality, first create the Resource the\nuser will log in to should they click on the confirmation email, and put\nthe Reset Password snippet in. Tell it what Resource the Login snippet is\nin - or where you\'d like it to provide a link back to:\n\n```\n[[ResetPassword? &loginResourceId=`72`]]\n```\n\nThen create another resource with the Forgot Password snippet, and tell it\nwhat Resource the Reset snippet is in:\n\n```\n[[!ForgotPassword? &resetResourceId=`123`]]\n```\n\n--------\nRegister\n--------\n\nTo use the Register snippet, simply place the Snippet in the Resource where\nyour HTML register form is. (A default one called lgnRegisterFormTpl has\nbeen provided.). This snippet also requires Activation by the User, so they\nwill get an email in their inbox regarding their signup.\n\nIn your form field names, you can use validation filters to validate your\nfields. They are separated with the colon : symbol. Example:\n\n```\n<input type=\"password\" name=\"password:required:minLength=6\" id=\"password\" value=\"[[+password]]\" />\n```\n\nwill require that the password field not be empty, and have a minimum\nlength of 6 chars. You can encapsulate validator params (6 here) with ` if\nthe param has spaces in the name. The default validators provided are:\n\n```\nrequired\nblank\nemail\npassword_confirm=`nameOfPasswordField`\nminLength=`123`\nmaxLength=`123`\nminValue=`123`\nmaxValue=`123`\n```\n\nYou can also do custom validators by creating a Snippet and using that as\nthe validator name. Example: We create a Snippet called \'equalTo\' and\non our field, we set:\n\n```\n<input type=\"text\" name=\"field:equalTo=`123`\" id=\"field\" />\n```\n\nNow, in our snippet, our code would look like so:\n\n```\n<?php\nif ($scriptProperties[\'value\'] !== $scriptProperties[\'param\']) {\n    return \'Value not equal to: \'.$scriptProperties[\'param\'];\n}\nreturn true;\n?>\n```\n\nReturning true will make the field valid. Any other return value will\nbe the error message. Snippets get passed the following parameters:\n\n- key: The name of the field.\n- value: The value of the field.\n- param: The parameter, if applicable, passed to the validator.\n- type: The name of the validator.\n- validator: A reference to the lgnValidator instance.\n\nSee the Snippet Properties and the [MODX Docs](https://docs.modx.com/extras/revo/login) for more options.\n\nThanks,\nJason Coward & Shaun McCormick\nMODX, LLC\n\";s:9:\"changelog\";s:13267:\"Changelog for Login\n===================\n\nLogin 1.9.10\n------------------------------------\n- Log error if mail was not sent [#174]\n- Switched translation to Weblate and removed not translated/less translated lexicon\n\nLogin 1.9.9\n------------------------------------\n- Fix validate email addresses in Register [#143]\n\nLogin 1.9.8\n------------------------------------\n- Allow persistParams when redirectUnsetDefaultParams is true [#157]\n- Parse file based chunks [#167]\n- Prevent directory traversal in the username when register a new user\n- Fix logging \'Could not load package metadata for package login.\' during install\n- Update Translations\n\nLogin 1.9.7\n------------------------------------\n- Generate the password directly with modx->user->generatePassword()\n- Make it possible to set the usergroup rank when register a new user [#135]\n- Set an action in the default password reset form [#134]\n- Update Translations\n\nLogin 1.9.6\n------------------------------------\n- Register snippet PII improvements [#130]\n- JSON responses for the Login controller/snippet [#121]\n- Use Crowdin for translations: https://crowdin.com/project/modx-login\n- Update Translations [#132]\n- Use $modx->user->generatePassword for generating passwords [#131]\n- Escape MODX tags after htmlspecialchars because of the ampersand sign\n\nLogin 1.9.5\n------------------------------------\n- Fix ResetPassword passing null instead of an array to getChunk\n- Remove hash_class, salt and sessionid from placeholders\n- Prevent potential XSS in placeholders\n- Added two missing default template chunks\n- Fixing a charset issue in some language files\n- Fixing email validation [#110]\n- Disable User/E-mail Enumeration in ForgotPassword snippet by an empty sentTpl property (default)\n- New jsonResponse property for returning a JSON by the Register snippet (for an AJAX call response)\n- Possibility to reset the registration fields after successful registration\n\nLogin 1.9.4\n------------------------------------\n- Disable User/E-mail Enumeration\n- Enable login via email\n- Convert deprecated ereg functions to preg_* [#86]\n- Fixing error placeholders with empty placeholderPrefix\n- Fixing recoverable error, Argument 2 to getChunk() must be of the type array, null given [#87]\n\nLogin 1.9.3\n------------------------------------\n- Added activePage property to ConfirmRegister controller\n- Added danish language files\n- Normalize placeholder prefix usage\n- Improved PHP7 compatibility\n- Added loggedinResourceId and loggedoutResourceId to the Login controller\n- Fix errors with square brackets in changed password\n- Add confirm password and password length validation messages to the field error placeholders too\n- Fill lu/lp placeholders in the change password form\n- Added hidden lu/lp fields to the lgnResetPassChangePassTpl chunk\n- Fix for array fields in Register/Profile/UpdateProfile snippet\n\nLogin 1.9.2\n------------------------------------\n- Fix sending register activation email\n- Fix ConfirmRegister processor\n\nLogin 1.9.1\n------------------------------------\n- [[!+error.message]] returns detailed error\n- [#42] Fixed URL encoding/decoding\n- Sanitise Login placeholders\n- Fixed namespace paths\n\nLogin 1.9.0\n------------------------------------\n- Expired/used password reset link notification\n- Added autoLogin and forceChangePassword to ResetPassword snippet\n- Added autoLogin param to Register snippet\n- Improved password reset functionality\n- Update form fields with new values when reloadOnSuccess=0\n- Replace parseChunk with getChunk\n- Added Arabic lexicons\n- Fixed invalid properties in logindictionary and updateprofile\n- Added czech lexicons\n\nLogin 1.8.1\n------------------------------------\n- Add password strength algorithm and checking properties to Register, via &ensurePasswordStrength property\n\nLogin 1.8.0\n------------------------------------\n- [#5946] Add ability to set User Group for a new user via the &usergroupsField property\n- [#7520] Fix bug with ConfirmRegister logging the user in as anonymous\n\nLogin 1.7.3\n------------------------------------\n- [#7035] Fix regression error with email field in Register snippet\n\nLogin 1.7.2\n------------------------------------\n- [#6194] Fix issue with UpdateProfile when specifying the non-active user to update\n- [#6538] Add removeExpiredRegistrations property to Register snippet for handling expired, unactivated registrations\n- [#6256] Ensure Register respects passwordField and emailField properties\n- [#6288] Fix error message display in ChangePassword\n\nLogin 1.7.1\n------------------------------------\n- [#5947] Fix issue with Profile with unauthenticated users\n- [#5979] Fix issue with ConfirmRegister and non-FURL sites\n- [#5734] Add &allowedFields to Register to allow restricting of submitted fields to a specific set\n- [#6010] Fix typo in UpdateProfile mismatching ID of profile to internalKey\n- [#5961] Add &trimPassword to automatically trim whitespace from submitted passwords\n- Add &generatePassword to automatically generate a password instead of having to provide one manually\n- [#6146] Add &validatePassword to Register to allow for manual password generation\n- [#5969] Add &user property to UpdateProfile to allow specifying user to update\n\nLogin 1.7.0\n------------------------------------\n- [#49] Update reCaptcha URLs\n- [#5793] Add errTpl and errTplType properties to ForgotPassword\n- [#5823] Fix issue where postHooks did not have fields available\n- [#5797] Fix issue where &authenticate was not respected in ConfirmRegister snippet\n- [#5796] Fix issue where errors could appear twice if user used validators on username/email/password fields\n- Add ActiveUsers snippet that shows a list of active, logged-in users\n- Add file-based hooks to Login hook calls\n- Complete OOP refactoring to provide more stable development and better code isolation\n- Add unit test framework and over 30 tests\n- Add alternative plaintext email option for ability to send both html and plaintext in emails\n- [#5166] Add additional sanity decoding to ConfirmRegister processing\n\nLogin 1.6.5\n------------------------------------\n- [#5176] Fix issue with Registration in Revo 2.0 installations\n- Fix issue with some error messages not being wrapped with errTpl\n- Email validator now only checks for email validation, not required status\n- [#5166] Add additional sanity decoding to ConfirmRegister processing\n\nLogin 1.6.4\n------------------------------------\n- [#3588] Add &allowedFields and &allowedExtendedFields to UpdateProfile to restrict fields that are updated\n- [#4744] Add &redirectToOnFailedAuth parameter for redirecting to a separate page on failed logins\n- [#3263] Remove duplicate error spans in validator output\n\nLogin 1.6.3\n------------------------------------\n- Better support for checkboxes/radios/bracketed fields in login validator\n- [#5088] Fix issue with ChangePassword &validateOldPassword and Revo 2.1.1\n\nLogin 1.6.2\n------------------------------------\n- [#4844] Automatically trim trailing whitespace/newlines in validator calls\n- [#4843] Fix issue with sentTplType not being respected in ForgotPassword\n- [#4936] Fix issue in ForgotPassword that occurred if no user was found with that username\n- [#5019] Add backwards compatibility for Revo 2.0.x users in ResetPassword\n- Fix reference to $this->modx->lexicon in Login Snippet\n\nLogin 1.6.0/1\n------------------------------------\n- [#4886] Fix issue with variable variable in main login class when loading hooks\n- [#4487] Prevent usage of mb_ereg if not installed\n- [#3500] Fix issues with inline tplType params in Login snippets\n- [#4545] Fix issue with OnBeforeUserActivate event\n- Revolution 2.1 support, specifically with the password changes\n\nLogin 1.5.3\n------------------------------------\n- Add preHooks to ForgotPassword snippet\n- Fix issue that occurs when Login and Register forms are on same page with math register hook\n\nLogin 1.5.2\n------------------------------------\n- [#3330] Add sanity checks to prevent possible submitVar data adding in UpdateProfile\n- Add support for moderation of users when done in a prehook\n- Add support for redirectBackParams that can send encoded data through a login/registration process\n- Add a generic validation error in Register to allow for general messages\n- Ensure preHooks run before password validation in ChangePassword snippet\n- Fix issue with placeholderPrefix in UpdateProfile snippet\n\nLogin 1.5.1\n------------------------------------\n- [#44] Fix bug with login validator, &validate parameter\n- [#40] Fix issue with syncUsername in UpdateProfile\n- [#42] Respect allow_multiple_emails setting that prevents users with same email addresses\n- [#43] Add workaround for xPDO bug with NULL fields in modUserProfile\n- Trim each hook specification in hooks calls\n- [#28] Fixed validator issue in UpdateProfile\n- Added redirectTo and redirectParams on ForgotPassword snippet\n- Updated events in ResetPassword snippet to pass user object\n- Fixed UpdateProfile to properly update user obj so derivative User classes can manage profile updates\n\nLogin 1.5.0\n------------------------------------\n- Fixed security vulnerability\n- Added authenticate and authenticateContexts to ConfirmRegister to allow for authentication after confirming registration\n- Fixed persisting request alias params issue in ConfirmRegister\n- [#15] Added ability to assign roles when using &usergroups in Register, ie: &usergroups=`my-group-name:Member`\n- Added math hook to Register, allowing anti-spam math field measure\n- Added fix to allow overriding of class_key for new users in Register\n\nLogin 1.4.0\n------------------------------------\n- Added redirectBack to Register, Login and ConfirmRegister that allows dynamic redirection handling for other forms needing login/registration\n- Added redirectTo, redirectParams to ConfirmRegister that will redirect after successful confirmation\n- Added persistParams to Register snippet, useful for shopping cart implementations to persist parameters across the registration process\n- [#27] Fixed issue with activationEmail always overriding normal email\n- [#29] Added loginResourceParams, logoutResourceParams, which allows attaching REQUEST parameters to login/logout redirection URLs\n- Added changelog to build\n- [#26],[#14] Added activationEmail property for better handling of middle men in activation steps\n\nLogin 1.3.2-pl\n------------------------------------\n- [#25] Added isLoggedIn snippet for checking auth status\n- [#24] Fixed issue where inactive user could re-register\n- Fixed issue with embedded chunk type display\n- Fixed issue with redirects and non-FURLs on Register snippet\n\nLogin 1.3.1-pl (October 15, 2010)\n------------------------------------\n- Fixed issue with Login snippet on invalid logins\n\nLogin 1.3.0-pl (October 14, 2010)\n------------------------------------\n- Modified experimental multi-context support to use new login processor add_contexts parameter\n- Added ChangePassword snippet for changing passwords in the front-end\n- Fixed bugs with usernameField property, now works as expected\n- Added Dutch translation\n\nLogin 1.2.0\n------------------------------------\n- Fixed issues with placement of prehooks and such\n- Added excludeExtended property to Register, UpdateProfile snippets to allow for excluding fields from extended fields\n- Added new hook API methods for easier setting/retrieving of fields\n- Added experimental multiple-context login support\n- Fixed bug in login snippet with hard-coded action keys\n- Added support to set subject in ForgotPassword email\n- Added reCaptcha support to login form via a preHook\n- Added preHooks and postHooks ability to Login snippet\n- i18n of snippet properties\n\nLogin 1.1.0\n------------------------------------\n- Added Profile snippet, which outputs Profile data of a User in placeholders\n- Added &useExtended to UpdateProfile/Register, which allows users to set additional fields passed to be set in extended column\n- Fixed bug in UpdateProfile where validators were broken\n\nLogin 1.0.3\n------------------------------------\n- Fixed bug where logout link generation was ignorant of xhtml_urls setting\n- Fixed bug where ForgotPassword was sending invalid confirmUrl\n- Added preHooks and postHooks properties for doing pre and post register scripting to UpdateProfile snippet\n- Added preHooks and postHooks properties for doing pre and post register scripting to Register snippet\n- Added syncUsername property to UpdateProfile snippet\n- Fixed bug with embedded output in Login snippet\n- Added Russian translation\n\nLogin 1.0.2\n------------------------------------\n- Updated copyright information\n- Ensure username,password and email are always passed to register snippet to prevent blank logins\n\nLogin 1.0.1\n------------------------------------\n- Consolidated elements into own dir\n- Added extra checks and fixes to lgnValidator class\n- Added UpdateProfile snippet to enable updating of profile from front-end\n\nLogin 1.0.0\n------------------------------------\n- [#ADDON-129] Added name to default Register form\n- [#ADDON-106] Fixed incorrect plugin event invoking\n- [#ADDON-107] Added missing lexicon entry register.password_confirm\n- [#ADDON-103] Fixed context-specific issue with register email\n- [#ADDON-118] Force lexicon topic to load on lgnRegisterForm\n- Fixed alias issue in ForgotPassword snippet\n- Added changelog.txt\n\";s:9:\"signature\";s:15:\"login-1.9.10-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:43:\"/workspace/package/install/login-1.9.10-pl/\";s:14:\"package_action\";i:1;}',	'Login',	'a:38:{s:2:\"id\";s:24:\"616415eb71b3912df302ffa2\";s:7:\"package\";s:24:\"4d556c31b2b083396d000a75\";s:12:\"display_name\";s:15:\"login-1.9.10-pl\";s:4:\"name\";s:5:\"Login\";s:7:\"version\";s:6:\"1.9.10\";s:13:\"version_major\";s:1:\"1\";s:13:\"version_minor\";s:1:\"9\";s:13:\"version_patch\";s:2:\"10\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:4:\"jako\";s:11:\"description\";s:107:\"<p>Loads a simple login/logout form, with password retrieval functionality and a register form snippet.</p>\";s:12:\"instructions\";s:38:\"<p>Install via Package Management.</p>\";s:9:\"changelog\";s:150:\"<ul>\n<li>Log error if mail was not sent [#174]</li>\n<li>Switched translation to Weblate and removed not translated/less translated lexicon</li>\n</ul>\n\";s:9:\"createdon\";s:24:\"2021-10-11T10:46:03+0000\";s:9:\"createdby\";s:4:\"jako\";s:8:\"editedon\";s:24:\"2022-03-21T07:50:20+0000\";s:10:\"releasedon\";s:24:\"2021-10-11T10:46:03+0000\";s:9:\"downloads\";s:6:\"139206\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:4:\"true\";s:8:\"featured\";s:4:\"true\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:1:\"2\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=61641703410f9c4dc2168482\";s:9:\"signature\";s:15:\"login-1.9.10-pl\";s:11:\"supports_db\";s:5:\"mysql\";s:16:\"minimum_supports\";s:1:\"2\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:0:\"\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"61641703410f9c4dc2168482\";s:7:\"version\";s:24:\"616415eb71b3912df302ffa2\";s:8:\"filename\";s:29:\"login-1.9.10-pl.transport.zip\";s:9:\"downloads\";s:4:\"1864\";s:6:\"lastip\";s:12:\"203.153.6.23\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=61641703410f9c4dc2168482\";}s:17:\"package-signature\";s:15:\"login-1.9.10-pl\";s:10:\"categories\";s:8:\"security\";s:4:\"tags\";s:84:\"security,login,profile,user,access,restrict,community,password,forgot password,reset\";}',	1,	9,	10,	'pl',	0),
('login-1.9.13-pl',	'2024-02-11 22:06:53',	'2024-02-11 22:08:12',	'2024-02-11 22:08:12',	0,	1,	1,	0,	'login-1.9.13-pl.transport.zip',	NULL,	'a:8:{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:2998:\"--------------------\nSnippet: Login\n--------------------\n- Version: 1.9.8\n- Since: June 21, 2010\n- Author: Jason Coward <jason@modx.com>,\n        Shaun McCormick <shaun+login@modx.com>\n\nThis component loads a simple login and logout form. It also comes packaged\nwith ForgotPassword and ResetPassword snippets, which allow the user to put\nin their username or email to receive a confirmation email which will reset\ntheir password.\n\nExample for Login:\n```\n[[!Login]]\n```\n\nYou can also specify the template:\n\n```\n[[!Login? &tpl=`myLoginChunk`]]\n```\n\nSee the snippet properties for more options.\n\n--------------\nForgotPassword\n--------------\n\nTo use the password retrieval functionality, first create the Resource the\nuser will log in to should they click on the confirmation email, and put\nthe Reset Password snippet in. Tell it what Resource the Login snippet is\nin - or where you\'d like it to provide a link back to:\n\n```\n[[ResetPassword? &loginResourceId=`72`]]\n```\n\nThen create another resource with the Forgot Password snippet, and tell it\nwhat Resource the Reset snippet is in:\n\n```\n[[!ForgotPassword? &resetResourceId=`123`]]\n```\n\n--------\nRegister\n--------\n\nTo use the Register snippet, simply place the Snippet in the Resource where\nyour HTML register form is. (A default one called lgnRegisterFormTpl has\nbeen provided.). This snippet also requires Activation by the User, so they\nwill get an email in their inbox regarding their signup.\n\nIn your form field names, you can use validation filters to validate your\nfields. They are separated with the colon : symbol. Example:\n\n```\n<input type=\"password\" name=\"password:required:minLength=6\" id=\"password\" value=\"[[+password]]\" />\n```\n\nwill require that the password field not be empty, and have a minimum\nlength of 6 chars. You can encapsulate validator params (6 here) with ` if\nthe param has spaces in the name. The default validators provided are:\n\n```\nrequired\nblank\nemail\npassword_confirm=`nameOfPasswordField`\nminLength=`123`\nmaxLength=`123`\nminValue=`123`\nmaxValue=`123`\n```\n\nYou can also do custom validators by creating a Snippet and using that as\nthe validator name. Example: We create a Snippet called \'equalTo\' and\non our field, we set:\n\n```\n<input type=\"text\" name=\"field:equalTo=`123`\" id=\"field\" />\n```\n\nNow, in our snippet, our code would look like so:\n\n```\n<?php\nif ($scriptProperties[\'value\'] !== $scriptProperties[\'param\']) {\n    return \'Value not equal to: \'.$scriptProperties[\'param\'];\n}\nreturn true;\n?>\n```\n\nReturning true will make the field valid. Any other return value will\nbe the error message. Snippets get passed the following parameters:\n\n- key: The name of the field.\n- value: The value of the field.\n- param: The parameter, if applicable, passed to the validator.\n- type: The name of the validator.\n- validator: A reference to the lgnValidator instance.\n\nSee the Snippet Properties and the [MODX Docs](https://docs.modx.com/extras/revo/login) for more options.\n\nThanks,\nJason Coward & Shaun McCormick\nMODX, LLC\n\";s:9:\"changelog\";s:13679:\"Changelog for Login\n===================\n\nLogin 1.9.13\n------------------------------------\n- Fix not sending emails in MODX 3, when the modPHPMailer is initialized with $modx->services instead of $modx->getService\n\nLogin 1.9.12\n------------------------------------\n- Set primary_group if it is not set when register a new user\n\nLogin 1.9.11\n------------------------------------\n- Fix ensurePasswordStrength [#181]\n- Fix loginViaEmail for MODX 3 [#179]\n\nLogin 1.9.10\n------------------------------------\n- Log error if mail was not sent [#174]\n- Switched translation to Weblate and removed not translated/less translated lexicon\n\nLogin 1.9.9\n------------------------------------\n- Fix validate email addresses in Register [#143]\n\nLogin 1.9.8\n------------------------------------\n- Allow persistParams when redirectUnsetDefaultParams is true [#157]\n- Parse file based chunks [#167]\n- Prevent directory traversal in the username when register a new user\n- Fix logging \'Could not load package metadata for package login.\' during install\n- Update Translations\n\nLogin 1.9.7\n------------------------------------\n- Generate the password directly with modx->user->generatePassword()\n- Make it possible to set the usergroup rank when register a new user [#135]\n- Set an action in the default password reset form [#134]\n- Update Translations\n\nLogin 1.9.6\n------------------------------------\n- Register snippet PII improvements [#130]\n- JSON responses for the Login controller/snippet [#121]\n- Use Crowdin for translations: https://crowdin.com/project/modx-login\n- Update Translations [#132]\n- Use $modx->user->generatePassword for generating passwords [#131]\n- Escape MODX tags after htmlspecialchars because of the ampersand sign\n\nLogin 1.9.5\n------------------------------------\n- Fix ResetPassword passing null instead of an array to getChunk\n- Remove hash_class, salt and sessionid from placeholders\n- Prevent potential XSS in placeholders\n- Added two missing default template chunks\n- Fixing a charset issue in some language files\n- Fixing email validation [#110]\n- Disable User/E-mail Enumeration in ForgotPassword snippet by an empty sentTpl property (default)\n- New jsonResponse property for returning a JSON by the Register snippet (for an AJAX call response)\n- Possibility to reset the registration fields after successful registration\n\nLogin 1.9.4\n------------------------------------\n- Disable User/E-mail Enumeration\n- Enable login via email\n- Convert deprecated ereg functions to preg_* [#86]\n- Fixing error placeholders with empty placeholderPrefix\n- Fixing recoverable error, Argument 2 to getChunk() must be of the type array, null given [#87]\n\nLogin 1.9.3\n------------------------------------\n- Added activePage property to ConfirmRegister controller\n- Added danish language files\n- Normalize placeholder prefix usage\n- Improved PHP7 compatibility\n- Added loggedinResourceId and loggedoutResourceId to the Login controller\n- Fix errors with square brackets in changed password\n- Add confirm password and password length validation messages to the field error placeholders too\n- Fill lu/lp placeholders in the change password form\n- Added hidden lu/lp fields to the lgnResetPassChangePassTpl chunk\n- Fix for array fields in Register/Profile/UpdateProfile snippet\n\nLogin 1.9.2\n------------------------------------\n- Fix sending register activation email\n- Fix ConfirmRegister processor\n\nLogin 1.9.1\n------------------------------------\n- [[!+error.message]] returns detailed error\n- [#42] Fixed URL encoding/decoding\n- Sanitise Login placeholders\n- Fixed namespace paths\n\nLogin 1.9.0\n------------------------------------\n- Expired/used password reset link notification\n- Added autoLogin and forceChangePassword to ResetPassword snippet\n- Added autoLogin param to Register snippet\n- Improved password reset functionality\n- Update form fields with new values when reloadOnSuccess=0\n- Replace parseChunk with getChunk\n- Added Arabic lexicons\n- Fixed invalid properties in logindictionary and updateprofile\n- Added czech lexicons\n\nLogin 1.8.1\n------------------------------------\n- Add password strength algorithm and checking properties to Register, via &ensurePasswordStrength property\n\nLogin 1.8.0\n------------------------------------\n- [#5946] Add ability to set User Group for a new user via the &usergroupsField property\n- [#7520] Fix bug with ConfirmRegister logging the user in as anonymous\n\nLogin 1.7.3\n------------------------------------\n- [#7035] Fix regression error with email field in Register snippet\n\nLogin 1.7.2\n------------------------------------\n- [#6194] Fix issue with UpdateProfile when specifying the non-active user to update\n- [#6538] Add removeExpiredRegistrations property to Register snippet for handling expired, unactivated registrations\n- [#6256] Ensure Register respects passwordField and emailField properties\n- [#6288] Fix error message display in ChangePassword\n\nLogin 1.7.1\n------------------------------------\n- [#5947] Fix issue with Profile with unauthenticated users\n- [#5979] Fix issue with ConfirmRegister and non-FURL sites\n- [#5734] Add &allowedFields to Register to allow restricting of submitted fields to a specific set\n- [#6010] Fix typo in UpdateProfile mismatching ID of profile to internalKey\n- [#5961] Add &trimPassword to automatically trim whitespace from submitted passwords\n- Add &generatePassword to automatically generate a password instead of having to provide one manually\n- [#6146] Add &validatePassword to Register to allow for manual password generation\n- [#5969] Add &user property to UpdateProfile to allow specifying user to update\n\nLogin 1.7.0\n------------------------------------\n- [#49] Update reCaptcha URLs\n- [#5793] Add errTpl and errTplType properties to ForgotPassword\n- [#5823] Fix issue where postHooks did not have fields available\n- [#5797] Fix issue where &authenticate was not respected in ConfirmRegister snippet\n- [#5796] Fix issue where errors could appear twice if user used validators on username/email/password fields\n- Add ActiveUsers snippet that shows a list of active, logged-in users\n- Add file-based hooks to Login hook calls\n- Complete OOP refactoring to provide more stable development and better code isolation\n- Add unit test framework and over 30 tests\n- Add alternative plaintext email option for ability to send both html and plaintext in emails\n- [#5166] Add additional sanity decoding to ConfirmRegister processing\n\nLogin 1.6.5\n------------------------------------\n- [#5176] Fix issue with Registration in Revo 2.0 installations\n- Fix issue with some error messages not being wrapped with errTpl\n- Email validator now only checks for email validation, not required status\n- [#5166] Add additional sanity decoding to ConfirmRegister processing\n\nLogin 1.6.4\n------------------------------------\n- [#3588] Add &allowedFields and &allowedExtendedFields to UpdateProfile to restrict fields that are updated\n- [#4744] Add &redirectToOnFailedAuth parameter for redirecting to a separate page on failed logins\n- [#3263] Remove duplicate error spans in validator output\n\nLogin 1.6.3\n------------------------------------\n- Better support for checkboxes/radios/bracketed fields in login validator\n- [#5088] Fix issue with ChangePassword &validateOldPassword and Revo 2.1.1\n\nLogin 1.6.2\n------------------------------------\n- [#4844] Automatically trim trailing whitespace/newlines in validator calls\n- [#4843] Fix issue with sentTplType not being respected in ForgotPassword\n- [#4936] Fix issue in ForgotPassword that occurred if no user was found with that username\n- [#5019] Add backwards compatibility for Revo 2.0.x users in ResetPassword\n- Fix reference to $this->modx->lexicon in Login Snippet\n\nLogin 1.6.0/1\n------------------------------------\n- [#4886] Fix issue with variable variable in main login class when loading hooks\n- [#4487] Prevent usage of mb_ereg if not installed\n- [#3500] Fix issues with inline tplType params in Login snippets\n- [#4545] Fix issue with OnBeforeUserActivate event\n- Revolution 2.1 support, specifically with the password changes\n\nLogin 1.5.3\n------------------------------------\n- Add preHooks to ForgotPassword snippet\n- Fix issue that occurs when Login and Register forms are on same page with math register hook\n\nLogin 1.5.2\n------------------------------------\n- [#3330] Add sanity checks to prevent possible submitVar data adding in UpdateProfile\n- Add support for moderation of users when done in a prehook\n- Add support for redirectBackParams that can send encoded data through a login/registration process\n- Add a generic validation error in Register to allow for general messages\n- Ensure preHooks run before password validation in ChangePassword snippet\n- Fix issue with placeholderPrefix in UpdateProfile snippet\n\nLogin 1.5.1\n------------------------------------\n- [#44] Fix bug with login validator, &validate parameter\n- [#40] Fix issue with syncUsername in UpdateProfile\n- [#42] Respect allow_multiple_emails setting that prevents users with same email addresses\n- [#43] Add workaround for xPDO bug with NULL fields in modUserProfile\n- Trim each hook specification in hooks calls\n- [#28] Fixed validator issue in UpdateProfile\n- Added redirectTo and redirectParams on ForgotPassword snippet\n- Updated events in ResetPassword snippet to pass user object\n- Fixed UpdateProfile to properly update user obj so derivative User classes can manage profile updates\n\nLogin 1.5.0\n------------------------------------\n- Fixed security vulnerability\n- Added authenticate and authenticateContexts to ConfirmRegister to allow for authentication after confirming registration\n- Fixed persisting request alias params issue in ConfirmRegister\n- [#15] Added ability to assign roles when using &usergroups in Register, ie: &usergroups=`my-group-name:Member`\n- Added math hook to Register, allowing anti-spam math field measure\n- Added fix to allow overriding of class_key for new users in Register\n\nLogin 1.4.0\n------------------------------------\n- Added redirectBack to Register, Login and ConfirmRegister that allows dynamic redirection handling for other forms needing login/registration\n- Added redirectTo, redirectParams to ConfirmRegister that will redirect after successful confirmation\n- Added persistParams to Register snippet, useful for shopping cart implementations to persist parameters across the registration process\n- [#27] Fixed issue with activationEmail always overriding normal email\n- [#29] Added loginResourceParams, logoutResourceParams, which allows attaching REQUEST parameters to login/logout redirection URLs\n- Added changelog to build\n- [#26],[#14] Added activationEmail property for better handling of middle men in activation steps\n\nLogin 1.3.2-pl\n------------------------------------\n- [#25] Added isLoggedIn snippet for checking auth status\n- [#24] Fixed issue where inactive user could re-register\n- Fixed issue with embedded chunk type display\n- Fixed issue with redirects and non-FURLs on Register snippet\n\nLogin 1.3.1-pl (October 15, 2010)\n------------------------------------\n- Fixed issue with Login snippet on invalid logins\n\nLogin 1.3.0-pl (October 14, 2010)\n------------------------------------\n- Modified experimental multi-context support to use new login processor add_contexts parameter\n- Added ChangePassword snippet for changing passwords in the front-end\n- Fixed bugs with usernameField property, now works as expected\n- Added Dutch translation\n\nLogin 1.2.0\n------------------------------------\n- Fixed issues with placement of prehooks and such\n- Added excludeExtended property to Register, UpdateProfile snippets to allow for excluding fields from extended fields\n- Added new hook API methods for easier setting/retrieving of fields\n- Added experimental multiple-context login support\n- Fixed bug in login snippet with hard-coded action keys\n- Added support to set subject in ForgotPassword email\n- Added reCaptcha support to login form via a preHook\n- Added preHooks and postHooks ability to Login snippet\n- i18n of snippet properties\n\nLogin 1.1.0\n------------------------------------\n- Added Profile snippet, which outputs Profile data of a User in placeholders\n- Added &useExtended to UpdateProfile/Register, which allows users to set additional fields passed to be set in extended column\n- Fixed bug in UpdateProfile where validators were broken\n\nLogin 1.0.3\n------------------------------------\n- Fixed bug where logout link generation was ignorant of xhtml_urls setting\n- Fixed bug where ForgotPassword was sending invalid confirmUrl\n- Added preHooks and postHooks properties for doing pre and post register scripting to UpdateProfile snippet\n- Added preHooks and postHooks properties for doing pre and post register scripting to Register snippet\n- Added syncUsername property to UpdateProfile snippet\n- Fixed bug with embedded output in Login snippet\n- Added Russian translation\n\nLogin 1.0.2\n------------------------------------\n- Updated copyright information\n- Ensure username,password and email are always passed to register snippet to prevent blank logins\n\nLogin 1.0.1\n------------------------------------\n- Consolidated elements into own dir\n- Added extra checks and fixes to lgnValidator class\n- Added UpdateProfile snippet to enable updating of profile from front-end\n\nLogin 1.0.0\n------------------------------------\n- [#ADDON-129] Added name to default Register form\n- [#ADDON-106] Fixed incorrect plugin event invoking\n- [#ADDON-107] Added missing lexicon entry register.password_confirm\n- [#ADDON-103] Fixed context-specific issue with register email\n- [#ADDON-118] Force lexicon topic to load on lgnRegisterForm\n- Fixed alias issue in ForgotPassword snippet\n- Added changelog.txt\n\";s:9:\"signature\";s:15:\"login-1.9.13-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:43:\"/workspace/package/install/login-1.9.13-pl/\";s:14:\"package_action\";i:1;}',	'Login',	'a:38:{s:2:\"id\";s:36:\"9a2f8b81-9f10-4d04-b16b-7fa2f57e3a07\";s:7:\"package\";s:36:\"99066727-e36f-4a30-9de3-d87c568070ac\";s:12:\"display_name\";s:15:\"login-1.9.13-pl\";s:4:\"name\";s:5:\"Login\";s:7:\"version\";s:6:\"1.9.13\";s:13:\"version_major\";s:1:\"1\";s:13:\"version_minor\";s:1:\"9\";s:13:\"version_patch\";s:2:\"13\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:12:\"splittingred\";s:11:\"description\";s:100:\"Loads a simple login/logout form, with password retrieval functionality and a register form snippet.\";s:12:\"instructions\";s:31:\"Install via Package Management.\";s:9:\"changelog\";s:131:\"- Fix not sending emails in MODX 3.x, when the modPHPMailer is initialized before with $modx->services instead of $modx->getService\";s:9:\"createdon\";s:25:\"2023-09-21T09:52:26+00:00\";s:9:\"createdby\";s:4:\"jako\";s:8:\"editedon\";s:25:\"2023-09-21T10:04:18+00:00\";s:10:\"releasedon\";s:25:\"2023-09-21T09:52:47+00:00\";s:9:\"downloads\";s:6:\"150377\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:4:\"true\";s:8:\"featured\";s:4:\"true\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:36:\"9861b09b-7176-455b-a9c1-bb7728924ad8\";s:8:\"supports\";s:3:\"2.0\";s:8:\"location\";s:120:\"https://rest.modx.com/extras/download/?id=9a2f8b81-9f10-4d04-b16b-7fa2f57e3a07&uuid=c803e3d7-eb87-4a06-aa7c-3772797e6da8\";s:9:\"signature\";s:15:\"login-1.9.13-pl\";s:11:\"supports_db\";s:0:\"\";s:16:\"minimum_supports\";s:3:\"2.0\";s:9:\"breaks_at\";s:5:\"100.0\";s:10:\"screenshot\";s:0:\"\";s:4:\"file\";a:7:{s:2:\"id\";s:36:\"9a2f8b81-9f10-4d04-b16b-7fa2f57e3a07\";s:7:\"version\";s:36:\"9a2f8b81-9f10-4d04-b16b-7fa2f57e3a07\";s:8:\"filename\";s:29:\"login-1.9.13-pl.transport.zip\";s:9:\"downloads\";s:4:\"1424\";s:6:\"lastip\";s:0:\"\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:120:\"https://rest.modx.com/extras/download/?id=9a2f8b81-9f10-4d04-b16b-7fa2f57e3a07&uuid=c803e3d7-eb87-4a06-aa7c-3772797e6da8\";}s:17:\"package-signature\";s:15:\"login-1.9.13-pl\";s:10:\"categories\";s:8:\"security\";s:4:\"tags\";s:84:\"security,login,profile,user,access,restrict,community,password,forgot password,reset\";}',	1,	9,	13,	'pl',	0),
('metax-2.0.2-pl',	'2020-03-27 17:19:13',	'2020-03-27 16:20:14',	'2020-03-27 17:20:14',	0,	1,	1,	0,	'metax-2.0.2-pl.transport.zip',	NULL,	'a:8:{s:7:\"license\";s:761:\"Copyright (C) 2010-2014  Salvatore Sodano (http://salscode.com/)\r\n\r\nThis program is free software; you can redistribute it and/or\r\nmodify it under the terms of the GNU General Public License\r\nas published by the Free Software Foundation; either version 2\r\nof the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful,\r\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\r\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r\nGNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License\r\nalong with this program; if not, write to the Free Software\r\nFoundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\";s:6:\"readme\";s:738:\"	MetaX (Meta Tags Extended) for Revolution\r\n	Version: 2.0.2\r\n	Author: Salvatore Sodano - http://salscode.com\r\n	Other Contributors:\r\n		Mike Stop Continues - http://mikestopcontinues.com\r\n		Jakob Class - http://www.class-zec.de <jakob.class@class-zec.de>\r\n		Stefan Rochlitzer - icebear-solutions.com <Stefan.Rochlitzer@icebear-solutions.com>\r\n	Support Page: http://rtfm.modx.com/display/ADDON/MetaX\r\n\r\n	Description: Automatically generates Meta tags for your pages, along with a base and a couple link tags.\r\n	For a full description visit http://rtfm.modx.com/extras/revo/metax.\r\n\r\n	MODx Versions:\r\n	Evolution - This is the Revo version, visit http://modx.com/extras/package/metax-evo for Evo.\r\n	Revolution - All versions, tested up to 2.3.\";s:9:\"changelog\";s:1258:\"	Version History:\r\n	1.0 - Private beta.\r\n	1.1 - First Public release.\r\n	1.2 - Thank you \"Mike Stop Continues\" for cleaning up some of the code. He made all of the\r\n	variables below work as inline parameters (they can still be set below if you wish)\r\n	and added mobile icon support. Also I\'ve added RSS tag support and support for\r\n	different HTML and xHTML syntaxes.\r\n	1.3 - Dublin Core support via &dublin parameter.\r\n	Also added &tabs parameter to control the number of tabs in front of each element.\r\n	Added the &ietool and &css parameters. As always, fully backward compatible.\r\n	1.3.1 - Fixes issues with getTvOutput function. Adds &spaces parameter which controls the\r\n	number of spaces in front of each tag.\r\n	1.4 - Canonical URL now supports Archivist URLs (Enabled in Revo only), thank you Jakob Class\r\n	for working on this feature. Fixed possible issue with a function declaration.\r\n	1.5 - Implemented StripTags function for all document fields (just in case you put some html in a\r\n	description field). Also removed all deprecated functions in preparation for Revo 2.1.\r\n	1.6 - Add HTML5 compat.\r\n	2.0 - Large rewrite. Employs TPL chunks to allow maximum flexibility.\r\n	2.0.1 - Small error fix about getOne use.\r\n	2.0.2 - Small fixes for Revo 2.3.\";s:9:\"signature\";s:14:\"metax-2.0.2-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:42:\"/workspace/package/install/metax-2.0.2-pl/\";s:14:\"package_action\";i:0;}',	'MetaX',	'a:38:{s:2:\"id\";s:24:\"53c5e97062cf24525d00205b\";s:7:\"package\";s:24:\"4d556cd6b2b083396d000e50\";s:12:\"display_name\";s:14:\"metax-2.0.2-pl\";s:4:\"name\";s:5:\"MetaX\";s:7:\"version\";s:5:\"2.0.2\";s:13:\"version_major\";s:1:\"2\";s:13:\"version_minor\";s:1:\"0\";s:13:\"version_patch\";s:1:\"2\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:1:\"0\";s:6:\"author\";s:12:\"thekiller237\";s:11:\"description\";s:465:\"<p>Coded for MODX Revolution.</p>\n<p>-Version 2.0.0 - WARNING this version does not support all of the previous syntax of older versions. In the long run, using 2.0.0 will save you time, but please double-check the output the first time you use it. This version uses 3 template chunks when generating the output, giving you direct control over what comes out. This version includes support for HTML4, xHTML4 and HTML5.</p><p>-Version 2.0.2 - Tested in Revo 2.3.</p>\";s:12:\"instructions\";s:351:\"<p>For Revolution, simply use the Package Manager.Use MODX Evolution? Visit&nbsp;<a href=\"http://modx.com/extras/package/metax-evo\">http://modx.com/extras/package/metax-evo</a>.&nbsp;For further support, visit&nbsp;<a href=\"http://rtfm.modx.com/extras/revo/metax\">http://rtfm.modx.com/extras/revo/metax</a>,&nbsp;which is updated for each version.</p>\";s:9:\"changelog\";s:1362:\"<p></p><ul><li>1.0 - Private beta.</li><li>1.1 - First Public release.</li><li>1.2 - Thank you \"Mike Stop Continues\" for cleaning up some of the code. He made all of the variables below work as inline parameters (they can still be set below if you wish) and added mobile icon support. Also I\'ve added RSS tag support and support for different HTML and xHTML syntaxes.</li><li>1.3 - Dublin Core support via &amp;dublin parameter. Also added &amp;tabs parameter to control the number of tabs in front of each element. Added the &amp;ietool and &amp;css parameters. As always, fully backward compatible.</li><li>1.3.1 - Fixes issues with getTvOutput function. Adds &amp;spaces parameter which controls the number of spaces in front of each tag.</li><li>1.4 - Canonical URL now supports Archivist URLs (Enabled in Revo only), thank you Jakob Class for working on this feature. Fixed possible issue with a function declaration.</li><li>1.5 - Implemented StripTags function for all document fields (just in case you put some html in a description field). Also removed all deprecated functions in preparation for Revo 2.1.</li><li>1.6 - Add HTML5 compat. (Privately tested release).</li><li>2.0 - Large rewrite. Employs TPL chunks to allow maximum flexibility.</li><li>2.0.1 - Small error fix about getOne use.</li><li>2.0.2 - Small fixes for Revo 2.3.</li></ul><p></p>\";s:9:\"createdon\";s:24:\"2014-07-16T02:54:40+0000\";s:9:\"createdby\";s:12:\"thekiller237\";s:8:\"editedon\";s:24:\"2020-03-27T03:19:01+0000\";s:10:\"releasedon\";s:24:\"2014-07-16T02:54:40+0000\";s:9:\"downloads\";s:5:\"17868\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:1:\"2\";s:8:\"location\";s:60:\"http://modx.com/extras/download/?id=53c5e97262cf24525d00205d\";s:9:\"signature\";s:14:\"metax-2.0.2-pl\";s:11:\"supports_db\";s:12:\"mysql,sqlsrv\";s:16:\"minimum_supports\";s:1:\"2\";s:9:\"breaks_at\";s:3:\"2.4\";s:10:\"screenshot\";s:0:\"\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"53c5e97262cf24525d00205d\";s:7:\"version\";s:24:\"53c5e97062cf24525d00205b\";s:8:\"filename\";s:28:\"metax-2.0.2-pl.transport.zip\";s:9:\"downloads\";s:4:\"7049\";s:6:\"lastip\";s:13:\"192.99.36.166\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:60:\"http://modx.com/extras/download/?id=53c5e97262cf24525d00205d\";}s:17:\"package-signature\";s:14:\"metax-2.0.2-pl\";s:10:\"categories\";s:57:\"administration,administration,content,templates,utilities\";s:4:\"tags\";s:8:\"seo,meta\";}',	2,	0,	2,	'pl',	0),
('minifyx-2.0.0-pl',	'2022-06-27 00:26:56',	'2022-06-26 22:27:03',	'2022-06-27 00:27:03',	0,	1,	1,	0,	'minifyx-2.0.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:814:\"# MinifyX\n\nCombine and minify JS and CSS files\n\n- Authors: Patrick Nijkamp <patrick.nijkamp@gmail.com>, Vasily Naumkin <bezumkin@yandex.ru>, Sergey Shlokov <sergant210@bk.ru>\n- Current Maintainer: Thomas Jakobi <office@treehillstudio.com>\n- License: GNU GPLv2\n\n## Features\n\nMinifyX is a MODX Revolution extra that allows to combine and minify JS and CSS\nfiles to speed up your site and reduce server load.\n\n## Installation\n\nMODX Package Management\n\n## Documentation\n\nFor more information please read the documentation on https://jako.github.io/MinifyX/\n\n## GitHub Repository\n\nhttps://github.com/Jako/MinifyX\n\n## Third party licenses\n\nThis extra includes third party software, for which we are thankful.\n\n- Assetic, MIT License\n- Jens Törnell/Tiny Html Minifier, MIT License\n- Wikimedia/Minify, Apache-2.0 License\n\";s:9:\"changelog\";s:4603:\"# Changelog\n\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),\nand this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).\n\n## [2.0.0] - 2022-06-21\n\n### Changed\n\n- Use Assetic instead of Munee\n- Minify HTML with pfaciana/tiny-html-minifier\n\n### Removed\n\n- Complete code refactoring removing internal methods and system settings\n- Removed global php method \"minify\"\n- Removed the ability to use versions for assets\n- Removed \"preHooks\" and \"hooks\"\n- Removed image compression with Munee\n\n## [1.7.1] - 2019-03-25\n\n### Fixed\n\n- Fixed bug with startup js register\n\n## [1.7.0] - 2018-12-30\n\n### Added\n\n- Added php function \"minify\" to manage assets from the php code\n- Added the ability to minify content\n- Added the ability to use version for assets\n\n### Changed\n\n- Updated composer dependencies\n\n## [1.6.0] - 2018-01-22\n\n### Added\n\n- Added the method \"getFileUrl\" to the MinifyX class\n- Added the method \"getFilePath\" to the MinifyX class\n- Added the \"forceUpdate\" snippet parameters and the same system setting\n- Added the \"forceDelete\" system setting to delete all files in the cache directory\n- Added the \"cssTpl\" and \"jsTpl\" snippet parameters\n- Added new register type \"print\" for immediate output\n- Added the file hook \"fixVm.php\" which fixes the \"vmax\" and \"vmin\" units after css compilation\n\n### Changed\n\n- Updated all Munee dependencies. You can do it anytime via composer\n- Php version must be >= 5.6\n\n### Fixed\n\n- Some bugfixes\n\n## [1.5.0] - 2018-01-19\n\n### Added\n\n- Added config file for groups (core/components/minifyx/config/groups.php)\n- Added the \"cssGroup\" snippet parameter\n- Added the \"jsGroup\" snippet parameter\n- Added the \"preHooks\" snippet parameter. A hook can be either a snippet or a file, specified in the core/components/minifyx/hooks folder\n- Added the \"hooks\" snippet parameter. A hook can be either a snippet or a file, specified in the core/components/minifyx/hooks folder\n- Added the ability to run the snippet multiple times\n- Added file hook \"cssToPage.php\" (&hooks=`cssToPage.php`)\n\n## [1.4.4] - 2016-05-16\n\n### Changed\n\n- [#22] Updated sabberworm/php-css-parser to version 7.0.3\n\n## [1.4.3] - 2016-04-28\n\n### Changed\n\n- [#21] Updated sabberworm/php-css-parser to version 7.0.2\n\n## [1.4.2] - 2015-08-22\n\n### Changed\n\n- Updated Munee with all subpackages\n\n### Fixed\n\n- Fixed fatal error on PHP 5.3.3\n\n## [1.4.1] - 2015-06-01\n\n### Changed\n\n- Updated Munee with all subpackages\n- [#18] Improved work of plugin\n\n## [1.3.1] - 2014-07-21\n\n### Changed\n\n- [#12] Support of MODX 2.3\n- [#11] Improved set of \"munee_cache\" variable on Windows\n\n## [1.3.0-pl1] - 2014-05-12\n\n### Changed\n\n- [#2] Added cut of comments in raw styles and scripts\n- [#9] Changed lessphp to https://github.com/oyejorge/less.php\n- Updated scssphp to version 0.0.10\n\n### Fixed\n\n- [#8] Fixed determining of cache dir for advanced site configuration\n- [#7] Fixed clearing cache\n\n## [1.3.0-b] - 2013-12-26\n\n### Added\n\n- Added plugin MinifyX that can process scripts, styles and images of web page\n\n### Changed\n\n- Refactored main class\n- Rewrited snippet MinifyX\n- Changed cached files format\n- Improved connector in assets for image processing\n\n## [1.2.2-pl3] - 2013-12-16\n\n### Removed\n\n- Removed phar file\n\n### Fixed\n\n- Fixed url of cache dir in subfolder installations\n- Ability of commenting files by prefixing them by the dash\n\n## [1.2.1] - 2013-12-03\n\n### Fixed\n\n- [#1] Replaced constant DIRECTORY_SEPARATOR to \'/\'\n\n## [1.2.0] - 2013-11-23\n\n### Fixed\n\n- Fixed clean of parameter &cacheFolder\n\n## [1.2.0-rc] - 2013-11-20\n\n### Changed\n\n- Updated leafo/lessphp to v0.4.0\n- Updated leafo/scssphp to v0.0.8\n- Improved error logging\n\n## [1.2.0-b] - 2013-11-12\n\n### Added\n\n- Integrated Munee library from http://mun.ee\n- Auto creation of cache dir\n- More options to register files on frontend\n\n## [1.1.3] - 2013-01-07\n\n### Changed\n\n- Absolute path in the URL attribute of all compressed files\n\n## [1.1.2] - 2012-09-11\n\n### Changed\n\n- Improved caching of minified files\n\n## [1.1.1] - 2012-09-10\n\n### Fixed\n\n- Removed E_WARNING on line 94 of minifyx.class.php\n\n## [1.1.0] - 2012-09-09\n\n### Added\n\n- Added Douglas Crockford\'s JSMin https://github.com/rgrove/jsmin-php/\n- Added properties to snippet\n- Added parameters jsFilename && cssFilename\n\n### Changed\n\n- Changed css minifier to Minify_CSS_Compressor from https://code.google.com/p/minify/\n- Serious refactor of code\n- Improved caching of files\n\n### Removed\n\n- Removed plugin\n\n## [1.0.0] - 2012-03-26\n\n### Added\n\n- Initial Version\n\";s:13:\"setup-options\";s:34:\"minifyx-2.0.0-pl/setup-options.php\";s:8:\"requires\";a:2:{s:3:\"php\";s:5:\">=7.4\";s:4:\"modx\";s:5:\">=2.8\";}s:9:\"signature\";s:16:\"minifyx-2.0.0-pl\";s:6:\"action\";s:26:\"workspace/packages/install\";s:8:\"register\";s:3:\"mgr\";s:5:\"topic\";s:44:\"/workspace/package/install/minifyx-2.0.0-pl/\";s:14:\"package_action\";i:1;}',	'MinifyX',	'a:38:{s:2:\"id\";s:24:\"62b1a5da321860042201c1c2\";s:7:\"package\";s:24:\"4f707550f24554457b00011c\";s:12:\"display_name\";s:16:\"minifyx-2.0.0-pl\";s:4:\"name\";s:7:\"MinifyX\";s:7:\"version\";s:5:\"2.0.0\";s:13:\"version_major\";s:1:\"2\";s:13:\"version_minor\";s:1:\"0\";s:13:\"version_patch\";s:1:\"0\";s:7:\"release\";s:2:\"pl\";s:8:\"vrelease\";s:2:\"pl\";s:14:\"vrelease_index\";s:0:\"\";s:6:\"author\";s:4:\"jako\";s:11:\"description\";s:131:\"MinifyX is a MODX Revolution extra that allows to combine and minify JS and CSS\nfiles to speed up your site and reduce server load.\";s:12:\"instructions\";s:60:\"Install via package manager, use the snippet and the plugin.\";s:9:\"changelog\";s:369:\"**Breaking change in 2.0**\n\n- Complete code refactoring removing internal methods and system settings\n- Removed global php method \"minify\"\n- Removed the ability to use versions for assets\n- Removed \"preHooks\" and \"hooks\"\n- Removed image compression with Munee\n\n**Changes in this version**\n\n- Use Assetic instead of Munee\n- Minify HTML with pfaciana/tiny-html-minifier\n\n\";s:9:\"createdon\";s:24:\"2022-06-21T11:04:58+0000\";s:9:\"createdby\";s:4:\"jako\";s:8:\"editedon\";s:24:\"2022-06-26T21:56:39+0000\";s:10:\"releasedon\";s:24:\"2022-06-21T11:04:58+0000\";s:9:\"downloads\";s:5:\"48187\";s:8:\"approved\";s:4:\"true\";s:7:\"audited\";s:5:\"false\";s:8:\"featured\";s:5:\"false\";s:10:\"deprecated\";s:5:\"false\";s:7:\"license\";s:5:\"GPLv2\";s:7:\"smf_url\";s:0:\"\";s:10:\"repository\";s:24:\"4d4c3fa6b2b0830da9000001\";s:8:\"supports\";s:3:\"2.8\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=62b1a5da321860042201c1c3\";s:9:\"signature\";s:16:\"minifyx-2.0.0-pl\";s:11:\"supports_db\";s:12:\"mysql,sqlsrv\";s:16:\"minimum_supports\";s:3:\"2.8\";s:9:\"breaks_at\";s:8:\"10000000\";s:10:\"screenshot\";s:0:\"\";s:4:\"file\";a:7:{s:2:\"id\";s:24:\"62b1a5da321860042201c1c3\";s:7:\"version\";s:24:\"62b1a5da321860042201c1c2\";s:8:\"filename\";s:30:\"minifyx-2.0.0-pl.transport.zip\";s:9:\"downloads\";s:2:\"89\";s:6:\"lastip\";s:14:\"37.232.161.181\";s:9:\"transport\";s:4:\"true\";s:8:\"location\";s:61:\"https://modx.com/extras/download/?id=62b1a5da321860042201c1c3\";}s:17:\"package-signature\";s:16:\"minifyx-2.0.0-pl\";s:10:\"categories\";s:39:\"core-extensions,integrations,multimedia\";s:4:\"tags\";s:34:\"less,scss,minify,css,javascript,js\";}',	2,	0,	0,	'pl',	0),
